MDL-20636 Added phpDoc comments

This commit is contained in:
Dean Lennard
2011-05-11 15:04:07 +01:00
committed by Tim Hunt
parent 3546187e63
commit 2c3e2b53e6
+186 -1
View File
@@ -31,6 +31,18 @@
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class mod_quiz_renderer extends plugin_renderer_base {
/**
* Builds the review page
*
* @param quiz_attempt $attemptobj an instance of quiz_attempt.
* @param array $slots an array of intgers relating to questions.
* @param int $page the current page number
* @param bool $showall whether to show entire attempt on one page.
* @param bool $lastpage if true the current page is the last page.
* @param mod_quiz_display_options $displayoptions instance of mod_quiz_display_options.
* @param array $summarydata contains all table data
* @return $output containing html data.
*/
public function review_page(quiz_attempt $attemptobj, $slots, $page, $showall,
$lastpage, mod_quiz_display_options $displayoptions,
$summarydata) {
@@ -47,6 +59,13 @@ class mod_quiz_renderer extends plugin_renderer_base {
return $output;
}
/**
* Filters the summarydata array.
*
* @param array $summarydata contains row data for table
* @param int $page the current page number
* @return $summarydata containing filtered row data
*/
protected function filter_summary_table($summarydata, $page) {
if ($page == 0) {
return $summarydata;
@@ -62,6 +81,12 @@ class mod_quiz_renderer extends plugin_renderer_base {
return $summarydata;
}
/**
* Outputs the table containing data from summary data array
*
* @param array $summarydata contains row data for table
* @param int $page contains the current page number
*/
public function review_summary_table($summarydata, $page) {
$summarydata = $this->filter_summary_table($summarydata,
$page);
@@ -97,6 +122,16 @@ class mod_quiz_renderer extends plugin_renderer_base {
return $output;
}
/**
* Renders each question
*
* @param quiz_attempt $attemptobj instance of quiz_attempt
* @param bool $reviewing
* @param array $slots array of intgers relating to questions
* @param int $page current page number
* @param bool $showall if true shows attempt on single page
* @param mod_quiz_display_options $displayoptions instance of mod_quiz_display_options
*/
public function questions(quiz_attempt $attemptobj, $reviewing, $slots, $page, $showall,
mod_quiz_display_options $displayoptions) {
$output = '';
@@ -107,6 +142,16 @@ class mod_quiz_renderer extends plugin_renderer_base {
return $output;
}
/**
* Renders the main bit of the review page.
*
* @param array $summarydata contain row data for table
* @param int $page current page number
* @param mod_quiz_display_options $displayoptions instance of mod_quiz_display_options
* @param $content contains each question
* @param quiz_attempt $attemptobj instance of quiz_attempt
* @param bool $showall if true display attempt on one page
*/
public function review_form($summarydata, $page, $displayoptions, $content, $attemptobj,
$showall) {
if ($displayoptions->flags != question_display_options::EDITABLE) {
@@ -120,6 +165,7 @@ class mod_quiz_renderer extends plugin_renderer_base {
$output .= html_writer::start_tag('form', array('action' => $attemptobj->review_url(0,
$page, $showall), 'method' => 'post', 'class' => 'questionflagsaveform'));
$output .= html_writer::start_tag('div');
$output .= $content;
$output .= html_writer::empty_tag('input', array('type' => 'hidden', 'name' => 'sesskey',
'value' => sesskey()));
$output .= html_writer::start_tag('div', array('class' => 'submitbtns'));
@@ -133,6 +179,11 @@ class mod_quiz_renderer extends plugin_renderer_base {
return $output;
}
/**
* Returns either a liink or button
*
* @param $url contains a url for the review link
*/
public function finish_review_link($url) {
if ($this->page->pagelayout == 'popup') {
// In a 'secure' popup window.
@@ -146,6 +197,13 @@ class mod_quiz_renderer extends plugin_renderer_base {
}
}
/**
* Creates a next page arrow or the finishing link
*
* @param quiz_attempt $attemptobj instance of quiz_attempt
* @param int $page the current page
* @param bool $lastpage if true current page is the last page
*/
public function review_next_navigation(quiz_attempt $attemptobj, $page, $lastpage) {
if ($lastpage) {
$nav = $this->finish_review_link($attemptobj->view_url());
@@ -165,10 +223,20 @@ class mod_quiz_renderer extends plugin_renderer_base {
array('id' => 'quiz-timer'));
}
/**
* Create a preview link
*
* @param $url contains a url to the given page
*/
public function restart_preview_button($url) {
return $this->single_button($url, get_string('startnewpreview', 'quiz'));
}
/**
* Outputs the navigation block panel
*
* @param quiz_nav_panel_base $panel instance of quiz_nav_panel_base
*/
public function navigation_panel(quiz_nav_panel_base $panel) {
$output = '';
@@ -194,6 +262,11 @@ class mod_quiz_renderer extends plugin_renderer_base {
return $output;
}
/**
* Returns the quizzes navigation button
*
* @param quiz_nav_question_button $button
*/
protected function render_quiz_nav_question_button(quiz_nav_question_button $button) {
$classes = array('qnbutton', $button->stateclass);
$attributes = array();
@@ -232,6 +305,11 @@ class mod_quiz_renderer extends plugin_renderer_base {
'title' => $button->statestring));
}
/**
* outputs the link the other attempts.
*
* @param mod_quiz_links_to_other_attempts $links
*/
protected function render_mod_quiz_links_to_other_attempts(
mod_quiz_links_to_other_attempts $links) {
$attemptlinks = array();
@@ -245,8 +323,16 @@ class mod_quiz_renderer extends plugin_renderer_base {
return implode(', ', $attemptlinks);
}
/*
/**
* Attempt Page
*
* @param quiz_attempt $attemptobj Instance of quiz_attempt
* @param int $page Current page number
* @param quiz_access_manager $accessmanager Instance of quiz_access_manager
* @param array $messages An array of messages
* @param array $slots Contains an array of integers that relate to questions
* @param int $id The ID of an attempt
* @param int $nextpage The number of the next page
*/
public function attempt_page($attemptobj, $page, $accessmanager, $messages, $slots, $id,
$nextpage) {
@@ -256,6 +342,11 @@ class mod_quiz_renderer extends plugin_renderer_base {
return $output;
}
/**
* Returns any notices.
*
* @param array $messages
*/
private function quiz_notices($messages) {
if (!$messages) {
return '';
@@ -264,6 +355,15 @@ class mod_quiz_renderer extends plugin_renderer_base {
$this->access_messages($messages), 'quizaccessnotices');
}
/**
* Ouputs the form for making an attempt
*
* @param quiz_attempt $attemptobj
* @param int $page Current page number
* @param array $slots Array of integers relating to questions
* @param int $id ID of the attempt
* @param int $nextpage Next page number
*/
private function attempt_form($attemptobj, $page, $slots, $id, $nextpage) {
$output = '';
@@ -332,6 +432,12 @@ class mod_quiz_renderer extends plugin_renderer_base {
/*
* Summary Page
*/
/**
* Create the summary page
*
* @param quiz_attempt $attemptobj
* @param mod_quiz_display_options $displayoptions
*/
public function summary_page($attemptobj, $displayoptions) {
$output = '';
$output .= $this->summary_table($attemptobj, $displayoptions);
@@ -339,6 +445,12 @@ class mod_quiz_renderer extends plugin_renderer_base {
return $output;
}
/**
* Generates the table of summarydata
*
* @param quiz_attempt $attemptobj
* @param mod_quiz_display_options $displayoptions
*/
private function summary_table($attemptobj, $displayoptions) {
// Prepare the summary table header
$table = new html_table();
@@ -381,6 +493,11 @@ class mod_quiz_renderer extends plugin_renderer_base {
return $output;
}
/**
* Creates any controls a the page should have.
*
* @param quiz_attempt $attemptobj
*/
private function summary_page_controls($attemptobj) {
$output = '';
// countdown timer
@@ -413,6 +530,17 @@ class mod_quiz_renderer extends plugin_renderer_base {
/*
* View Page
*/
/**
* Generates the view page
*
* @param int $course The id of the course
* @param array $quiz Array conting quiz data
* @param int $cm Course Module ID
* @param int $context The page context ID
* @param array $messages Array contining any maeeages
* @param mod_quiz_view_object $viewobj
* @param string $buttontext
*/
public function view_page($course, $quiz, $cm, $context, $messages, $viewobj, $buttontext) {
$output = '';
$output .= $this->view_information($course, $quiz, $cm, $context, $messages);
@@ -423,6 +551,15 @@ class mod_quiz_renderer extends plugin_renderer_base {
return $output;
}
/**
* Outputs an error message for any guests accessing the quiz
*
* @param int $course The course ID
* @param array $quiz Array contingin quiz data
* @param int $cm Course Module ID
* @param int $context The page contect ID
* @param array $messages Array containing any messages
*/
public function view_page_guest($course, $quiz, $cm, $context, $messages) {
$output = '';
$output .= $this->view_information($course, $quiz, $cm, $context, $messages);
@@ -433,6 +570,15 @@ class mod_quiz_renderer extends plugin_renderer_base {
return $output;
}
/**
* Outputs and error message for anyone who is not enrolle don the course
*
* @param int $course The course ID
* @param array $quiz Array contingin quiz data
* @param int $cm Course Module ID
* @param int $context The page contect ID
* @param array $messages Array containing any messages
*/
public function view_page_notenrolled($course, $quiz, $cm, $context, $messages) {
global $CFG;
$output = '';
@@ -444,6 +590,15 @@ class mod_quiz_renderer extends plugin_renderer_base {
return $output;
}
/**
* Output the page information
*
* @param int $course The course ID
* @param array $quiz Array contingin quiz data
* @param int $cm Course Module ID
* @param int $context The page contect ID
* @param array $messages Array containing any messages
*/
private function view_information($course, $quiz, $cm, $context, $messages) {
global $CFG;
$output = '';
@@ -469,6 +624,13 @@ class mod_quiz_renderer extends plugin_renderer_base {
return $output;
}
/**
* Generates the table of data
*
* @param array $quiz Array contining quiz data
* @param int $context The page context ID
* @param mod_quiz_view_object $viewobj
*/
private function view_table($quiz, $context, $viewobj) {
$output = '';
if (!$viewobj->attempts) {
@@ -606,6 +768,11 @@ class mod_quiz_renderer extends plugin_renderer_base {
return $output;
}
/**
* Prints the students best score
*
* @param mod_quiz_view_object $viewobj
*/
private function view_best_score($viewobj) {
$output = '';
// Print information about the student's best score for this quiz if possible.
@@ -615,6 +782,14 @@ class mod_quiz_renderer extends plugin_renderer_base {
return $output;
}
/**
* Generates data pertaining to quiz results
*
* @param array $quiz Array containing quiz data
* @param int $context The page context ID
* @param int $cm The Course Module Id
* @param mod_quiz_view_object $viewobj
*/
private function view_result_info($quiz, $context, $cm, $viewobj) {
$output = '';
if (!$viewobj->numattempts && !$viewobj->gradecolumn && is_null($viewobj->mygrade)) {
@@ -662,6 +837,16 @@ class mod_quiz_renderer extends plugin_renderer_base {
return $output;
}
/**
* Generates the view attempt button
*
* @param int $course The course ID
* @param array $quiz Array containging quiz date
* @param int $cm The Course Module ID
* @param int $context The page Context ID
* @param mod_quiz_view_object $viewobj
* @param string $buttontext
*/
private function view_attempt_button($course, $quiz, $cm, $context, $viewobj, $buttontext) {
$output = '';
// Determine if we should be showing a start/continue attempt button,