'id' => $cm->id, 'mode' => quiz_report_default_report($context)));
return html_writer::link($url, $summary);
}
+
+ /**
+ * Output a graph, or a message saying that GD is required.
+ * @param moodle_url $url the URL of the graph.
+ * @param string $title the title to display above the graph.
+ * @return string HTML fragment for the graph.
+ */
+ public function graph(moodle_url $url, $title) {
+ global $CFG;
+
+ if (empty($CFG->gdversion)) {
+ $graph = get_string('gdneed');
+ } else {
+ $graph = html_writer::empty_tag('img', array('src' => $url, 'alt' => $title));
+ }
+
+ return $this->heading($title) . html_writer::tag('div', $graph, array('class' => 'graph'));
+ }
}
class mod_quiz_links_to_other_attempts implements renderable {
class quiz_overview_report extends quiz_attempts_report {
public function display($quiz, $cm, $course) {
- global $CFG, $DB, $OUTPUT;
+ global $CFG, $DB, $OUTPUT, $PAGE;
list($currentgroup, $students, $groupstudents, $allowed) =
$this->init('overview', 'quiz_overview_settings_form', $quiz, $cm, $course);
}
if (!$table->is_downloading() && $options->usercanseegrades) {
+ $output = $PAGE->get_renderer('mod_quiz');
if ($currentgroup && $groupstudents) {
list($usql, $params) = $DB->get_in_or_equal($groupstudents);
$params[] = $quiz->id;
if ($DB->record_exists_select('quiz_grades', "userid $usql AND quiz = ?",
$params)) {
- $imageurl = new moodle_url('/mod/quiz/report/overview/overviewgraph.php',
+ $imageurl = new moodle_url('/mod/quiz/report/overview/overviewgraph.php',
array('id' => $quiz->id, 'groupid' => $currentgroup));
- $graphname = get_string('overviewreportgraphgroup', 'quiz_overview',
+ $graphname = get_string('overviewreportgraphgroup', 'quiz_overview',
groups_get_group_name($currentgroup));
- echo $OUTPUT->heading($graphname);
- echo html_writer::tag('div', html_writer::empty_tag('img',
- array('src' => $imageurl, 'alt' => $graphname)),
- array('class' => 'graph'));
+ echo $output->graph($imageurl, $graphname);
}
}
if ($DB->record_exists('quiz_grades', array('quiz'=> $quiz->id))) {
- $graphname = get_string('overviewreportgraph', 'quiz_overview');
- $imageurl = new moodle_url('/mod/quiz/report/overview/overviewgraph.php',
+ $imageurl = new moodle_url('/mod/quiz/report/overview/overviewgraph.php',
array('id' => $quiz->id));
- echo $OUTPUT->heading($graphname);
- echo html_writer::tag('div', html_writer::empty_tag('img',
- array('src' => $imageurl, 'alt' => $graphname)),
- array('class' => 'graph'));
+ $graphname = get_string('overviewreportgraph', 'quiz_overview');
+ echo $output->graph($imageurl, $graphname);
}
}
return true;
* @param int $quizstatsid the id of the statistics to show in the graph.
*/
protected function output_statistics_graph($quizstatsid, $s) {
- global $OUTPUT;
+ global $PAGE;
if ($s == 0) {
return;
}
+ $output = $PAGE->get_renderer('mod_quiz');
$imageurl = new moodle_url('/mod/quiz/report/statistics/statistics_graph.php',
array('id' => $quizstatsid));
- $OUTPUT->heading(get_string('statisticsreportgraph', 'quiz_statistics'));
- echo html_writer::tag('div', html_writer::empty_tag('img', array('src' => $imageurl,
- 'alt' => get_string('statisticsreportgraph', 'quiz_statistics'))),
- array('class' => 'graph'));
+ $graphname = get_string('statisticsreportgraph', 'quiz_statistics');
+ echo $output->graph($imageurl, $graphname);
}
/**