diff --git a/classes/feedback/section.php b/classes/feedback/section.php index 1693d3fd..7fbf0d3a 100644 --- a/classes/feedback/section.php +++ b/classes/feedback/section.php @@ -58,13 +58,13 @@ class section { * 'surveyid' - the surveyid field of the fb_sections table (required if no 'id' field), * 'sectionnum' - the section field of the fb_sections table (ignored if 'id' is present; defaults to 1). * - * @param array $params As above * @param array $questions Array of mod_questionnaire\question objects. + * @param array $params As above * @throws \dml_exception * @throws coding_exception * @throws invalid_parameter_exception */ - public function __construct($params = [], $questions) { + public function __construct($questions, $params = []) { if (!is_array($params) || !is_array($questions)) { throw new coding_exception('Invalid data provided.'); diff --git a/classes/output/mobile.php b/classes/output/mobile.php index c1166053..761f8156 100644 --- a/classes/output/mobile.php +++ b/classes/output/mobile.php @@ -48,7 +48,7 @@ public static function mobile_view_activity($args) { $completed = isset($args->completed) ? $args->completed : false; list($cm, $course, $questionnaire) = questionnaire_get_standard_page_items($cmid); - $questionnaire = new \questionnaire(0, $questionnaire, $course, $cm); + $questionnaire = new \questionnaire($course, $cm, 0, $questionnaire); $data = []; $data['cmid'] = $cmid; diff --git a/classes/output/renderer.php b/classes/output/renderer.php index cb6d6489..feb78320 100755 --- a/classes/output/renderer.php +++ b/classes/output/renderer.php @@ -207,14 +207,14 @@ public function render_progress_bar($section, $questionsbysec) { * Render a question for a survey. * @param \mod_questionnaire\question\question $question The question object. * @param \mod_questionnaire\responsetype\response\response $response Any current response data. - * @param array $dependants Array of all questions/choices depending on $question. * @param int $qnum The question number. * @param boolean $blankquestionnaire Used for printing a blank one. + * @param array $dependants Array of all questions/choices depending on $question. * @return string The output for the page. */ - public function question_output($question, $response, $dependants=[], $qnum, $blankquestionnaire) { + public function question_output($question, $response, $qnum, $blankquestionnaire, $dependants=[]) { - $pagetags = $question->question_output($response, $dependants, $qnum, $blankquestionnaire); + $pagetags = $question->question_output($response, $blankquestionnaire, $dependants, $qnum); // If the question has a template, then render it from the 'qformelement' context. If no template, then 'qformelement' // already contains HTML. diff --git a/classes/privacy/provider.php b/classes/privacy/provider.php index 9bbf559d..5c0829cd 100644 --- a/classes/privacy/provider.php +++ b/classes/privacy/provider.php @@ -211,7 +211,7 @@ public static function export_user_data(approved_contextlist $contextlist) { $lastcmid = $response->cmid; $course = $DB->get_record("course", ["id" => $response->qcourse]); $cm = get_coursemodule_from_instance("questionnaire", $response->qid, $course->id); - $questionnaire = new \questionnaire($response->qid, null, $course, $cm); + $questionnaire = new \questionnaire($course, $cm, $response->qid, null); } $responsedata['responses'][] = [ 'complete' => (($response->complete == 'y') ? get_string('yes') : get_string('no')), diff --git a/classes/question/question.php b/classes/question/question.php index 5dfd7b0f..e1897422 100644 --- a/classes/question/question.php +++ b/classes/question/question.php @@ -846,12 +846,12 @@ public function results_template($pdf = false) { /** * Get the output for question renderers / templates. * @param \mod_questionnaire\responsetype\response\response $response + * @param boolean $blankquestionnaire * @param array $dependants Array of all questions/choices depending on this question. * @param integer $qnum - * @param boolean $blankquestionnaire * @return \stdClass */ - public function question_output($response, $dependants=[], $qnum='', $blankquestionnaire) { + public function question_output($response, $blankquestionnaire, $dependants=[], $qnum='') { $pagetags = $this->questionstart_survey_display($qnum, $response); $pagetags->qformelement = $this->question_survey_display($response, $dependants, $blankquestionnaire); return $pagetags; diff --git a/classes/question/sectiontext.php b/classes/question/sectiontext.php index c7277060..1dc0d55d 100644 --- a/classes/question/sectiontext.php +++ b/classes/question/sectiontext.php @@ -112,7 +112,7 @@ protected function question_survey_display($response, $descendantsdata, $blankqu } list($cm, $course, $questionnaire) = questionnaire_get_standard_page_items(null, $response->questionnaireid); - $questionnaire = new \questionnaire(0, $questionnaire, $course, $cm); + $questionnaire = new \questionnaire($course, $cm, 0, $questionnaire); $questionnaire->add_renderer($PAGE->get_renderer('mod_questionnaire')); $questionnaire->add_page(new \mod_questionnaire\output\reportpage()); diff --git a/complete.php b/complete.php index 84173c5b..a6210aa1 100644 --- a/complete.php +++ b/complete.php @@ -47,7 +47,7 @@ $PAGE->set_url($url); $PAGE->set_context($context); -$questionnaire = new questionnaire(0, $questionnaire, $course, $cm); +$questionnaire = new questionnaire( $course, $cm, 0, $questionnaire); // Add renderer and page objects to the questionnaire object for display use. $questionnaire->add_renderer($PAGE->get_renderer('mod_questionnaire')); $questionnaire->add_page(new \mod_questionnaire\output\completepage()); diff --git a/drawchart.php b/drawchart.php index bd0c4b53..91977c0e 100644 --- a/drawchart.php +++ b/drawchart.php @@ -23,8 +23,8 @@ defined('MOODLE_INTERNAL') || die(); -function draw_chart($feedbacktype, $charttype=null, $labels, - $score=null, $allscore=null, $globallabel=null, $groupname, $allresponses) { +function draw_chart($feedbacktype, $labels, $groupname, + $allresponses, $charttype=null, $score=null, $allscore=null, $globallabel=null) { global $PAGE; $pageoutput = ''; diff --git a/externallib.php b/externallib.php index 31e93df6..653c4ed3 100644 --- a/externallib.php +++ b/externallib.php @@ -104,7 +104,7 @@ public static function submit_questionnaire_response($questionnaireid, $surveyid ); list($cm, $course, $questionnaire) = questionnaire_get_standard_page_items($cmid); - $questionnaire = new \questionnaire(0, $questionnaire, $course, $cm); + $questionnaire = new \questionnaire($course, $cm, 0, $questionnaire); $context = \context_module::instance($cm->id); self::validate_context($context); diff --git a/fbsections.php b/fbsections.php index d66f74dc..13f3a8e7 100644 --- a/fbsections.php +++ b/fbsections.php @@ -58,11 +58,11 @@ $SESSION->questionnaire = new stdClass(); } -$questionnaire = new questionnaire(0, $questionnaire, $course, $cm); +$questionnaire = new questionnaire($course, $cm, 0, $questionnaire); if ($sectionid) { // Get the specified section by its id. - $feedbacksection = new mod_questionnaire\feedback\section(['id' => $sectionid], $questionnaire->questions); + $feedbacksection = new mod_questionnaire\feedback\section($questionnaire->questions, ['id' => $sectionid]); } else if (!$DB->count_records('questionnaire_fb_sections', ['surveyid' => $questionnaire->sid])) { // There are no sections currently, so create one. @@ -75,8 +75,8 @@ } else { // Get the specified section by section number. - $feedbacksection = new mod_questionnaire\feedback\section(['surveyid' => $questionnaire->survey->id, 'sectionnum' => $section], - $questionnaire->questions); + $feedbacksection = new mod_questionnaire\feedback\section($questionnaire->questions, + ['surveyid' => $questionnaire->survey->id, 'sectionnum' => $section]); } // Get all questions that are valid feedback questions. diff --git a/feedback.php b/feedback.php index 3644d04a..834d1160 100644 --- a/feedback.php +++ b/feedback.php @@ -53,7 +53,7 @@ if (!isset($SESSION->questionnaire)) { $SESSION->questionnaire = new stdClass(); } -$questionnaire = new questionnaire(0, $questionnaire, $course, $cm); +$questionnaire = new questionnaire($course, $cm, 0, $questionnaire); // Add renderer and page objects to the questionnaire object for display use. $questionnaire->add_renderer($PAGE->get_renderer('mod_questionnaire')); diff --git a/lib.php b/lib.php index 75256261..c91aaa61 100644 --- a/lib.php +++ b/lib.php @@ -82,7 +82,7 @@ function questionnaire_add_instance($questionnaire) { // Create a new survey. $course = get_course($questionnaire->course); $cm = new stdClass(); - $qobject = new questionnaire(0, $questionnaire, $course, $cm); + $qobject = new questionnaire($course, $cm, 0, $questionnaire); if ($questionnaire->create == 'new-0') { $sdata = new stdClass(); @@ -547,7 +547,7 @@ function questionnaire_extend_settings_navigation(settings_navigation $settings, } $courseid = $course->id; - $questionnaire = new questionnaire(0, $questionnaire, $course, $cm); + $questionnaire = new questionnaire($course, $cm, 0, $questionnaire); if ($owner = $DB->get_field('questionnaire_survey', 'courseid', ['id' => $questionnaire->sid])) { $owner = (trim($owner) == trim($courseid)); @@ -763,7 +763,7 @@ function questionnaire_get_recent_mod_activity(&$activities, &$index, $timestart $cm = $modinfo->cms[$cmid]; $questionnaire = $DB->get_record('questionnaire', ['id' => $cm->instance]); - $questionnaire = new questionnaire(0, $questionnaire, $course, $cm); + $questionnaire = new questionnaire($course, $cm, 0, $questionnaire); $context = context_module::instance($cm->id); $grader = has_capability('mod/questionnaire:viewsingleresponse', $context); @@ -1226,10 +1226,10 @@ function mod_questionnaire_coursemodule_edit_post_actions($data, $course) { if (!empty($data->copyid)) { $cm = (object)['id' => $data->coursemodule]; - $questionnaire = new questionnaire(0, $data, $course, $cm); + $questionnaire = new questionnaire($course, $cm, 0, $data); $oldquestionnaireid = $DB->get_field('questionnaire', 'id', ['sid' => $data->copyid]); $oldcm = get_coursemodule_from_instance('questionnaire', $oldquestionnaireid); - $oldquestionnaire = new questionnaire($oldquestionnaireid, null, $course, $oldcm); + $oldquestionnaire = new questionnaire($course, $oldcm, $oldquestionnaireid, null); $oldcontext = context_module::instance($oldcm->id); $newcontext = context_module::instance($data->coursemodule); $areas = $questionnaire->get_all_file_areas(); diff --git a/locallib.php b/locallib.php index 42879e67..f17cbd98 100644 --- a/locallib.php +++ b/locallib.php @@ -784,7 +784,7 @@ function questionnaire_check_page_breaks($questionnaire) { } $newpbids[] = $newqid; $movetopos = $i; - $questionnaire = new questionnaire($questionnaire->id, null, $course, $cm); + $questionnaire = new questionnaire($course, $cm, $questionnaire->id, null); $questionnaire->move_question($newqid, $movetopos); } } @@ -795,7 +795,7 @@ function questionnaire_check_page_breaks($questionnaire) { } else if ($newpbids) { $msg .= get_string('checkbreaksadded', 'questionnaire').' '; $newpbids = array_reverse ($newpbids); - $questionnaire = new questionnaire($questionnaire->id, null, $course, $cm); + $questionnaire = new questionnaire($course, $cm, $questionnaire->id, null); foreach ($newpbids as $newpbid) { $msg .= $questionnaire->questions[$newpbid]->position.' '; } diff --git a/mod_form.php b/mod_form.php index b7053639..64760bb7 100644 --- a/mod_form.php +++ b/mod_form.php @@ -34,7 +34,7 @@ protected function definition() { global $COURSE; global $questionnairetypes, $questionnairerespondents, $questionnaireresponseviewers, $autonumbering; - $questionnaire = new questionnaire($this->_instance, null, $COURSE, $this->_cm); + $questionnaire = new questionnaire($COURSE, $this->_cm, $this->_instance, null); $mform =& $this->_form; diff --git a/myreport.php b/myreport.php index c4cf6c33..41ddc0cf 100644 --- a/myreport.php +++ b/myreport.php @@ -65,7 +65,7 @@ $PAGE->set_title(get_string('questionnairereport', 'questionnaire')); $PAGE->set_heading(format_string($course->fullname)); -$questionnaire = new questionnaire(0, $questionnaire, $course, $cm); +$questionnaire = new questionnaire($course, $cm, 0, $questionnaire); // Add renderer and page objects to the questionnaire object for display use. $questionnaire->add_renderer($PAGE->get_renderer('mod_questionnaire')); $questionnaire->add_page(new \mod_questionnaire\output\reportpage()); diff --git a/preview.php b/preview.php index dfdbade6..23a81884 100644 --- a/preview.php +++ b/preview.php @@ -79,7 +79,7 @@ $PAGE->set_context($context); $PAGE->set_cm($cm); // CONTRIB-5872 - I don't know why this is needed. -$questionnaire = new questionnaire($qid, $questionnaire, $course, $cm); +$questionnaire = new questionnaire($course, $cm, $qid, $questionnaire); // Add renderer and page objects to the questionnaire object for display use. $questionnaire->add_renderer($PAGE->get_renderer('mod_questionnaire')); @@ -141,7 +141,7 @@ $questionnaire->renderer->action_link($link, $linkname, $action, array('class' => $class, 'title' => $title), new pix_icon('t/print', $title))); } -$questionnaire->survey_print_render('', 'preview', $course->id, $rid = 0, $popup); +$questionnaire->survey_print_render($course->id, '', 'preview', $rid = 0, $popup); if ($popup) { $questionnaire->page->add_to_page('closebutton', $questionnaire->renderer->close_window_button()); } diff --git a/print.php b/print.php index b65793c4..6c43f650 100644 --- a/print.php +++ b/print.php @@ -37,7 +37,7 @@ // Check login and get context. require_login($courseid); -$questionnaire = new questionnaire(0, $questionnaire, $course, $cm); +$questionnaire = new questionnaire($course, $cm, 0, $questionnaire); // Add renderer and page objects to the questionnaire object for display use. $questionnaire->add_renderer($PAGE->get_renderer('mod_questionnaire')); @@ -66,6 +66,6 @@ $PAGE->set_pagelayout('popup'); echo $questionnaire->renderer->header(); $questionnaire->page->add_to_page('closebutton', $questionnaire->renderer->close_window_button()); -$questionnaire->survey_print_render('', 'print', $courseid, $rid, $blankquestionnaire); +$questionnaire->survey_print_render($courseid, '', 'print', $rid, $blankquestionnaire); echo $questionnaire->renderer->render($questionnaire->page); echo $questionnaire->renderer->footer(); diff --git a/qsettings.php b/qsettings.php index 30164aec..82e169e0 100644 --- a/qsettings.php +++ b/qsettings.php @@ -46,7 +46,7 @@ if (!isset($SESSION->questionnaire)) { $SESSION->questionnaire = new stdClass(); } -$questionnaire = new questionnaire(0, $questionnaire, $course, $cm); +$questionnaire = new questionnaire($course, $cm, 0, $questionnaire); // Add renderer and page objects to the questionnaire object for display use. $questionnaire->add_renderer($PAGE->get_renderer('mod_questionnaire')); diff --git a/questionnaire.class.php b/questionnaire.class.php index 6ab665d4..abd437f5 100644 --- a/questionnaire.class.php +++ b/questionnaire.class.php @@ -56,7 +56,7 @@ class questionnaire { * The class constructor * */ - public function __construct($id = 0, $questionnaire = null, &$course, &$cm, $addquestions = true) { + public function __construct(&$course, &$cm, $id = 0, $questionnaire = null, $addquestions = true) { global $DB; if ($id) { @@ -270,7 +270,7 @@ public function view() { // Handle the main questionnaire completion page. $quser = $USER->id; - $msg = $this->print_survey($USER->id, $quser); + $msg = $this->print_survey($quser, $USER->id); // If Questionnaire was submitted with all required fields completed ($msg is empty), // then record the submittal. @@ -1070,7 +1070,7 @@ public function eligible_questions_on_page($secnum, $rid) { // Display Methods. - public function print_survey($userid=false, $quser) { + public function print_survey($quser, $userid=false) { global $SESSION, $CFG; if (!($formdata = data_submitted()) || !confirm_sesskey()) { @@ -1169,7 +1169,7 @@ public function print_survey($userid=false, $quser) { $this->page->add_to_page('formstart', $this->renderer->complete_formstart($action, ['referer' => $formdatareferer, 'a' => $this->id, 'sid' => $this->survey->id, 'rid' => $formdatarid, 'sec' => $formdata->sec, 'sesskey' => sesskey()])); if (isset($this->questions) && $numsections) { // Sanity check. - $this->survey_render($formdata->sec, $msg, $formdata); + $this->survey_render($formdata, $formdata->sec, $msg); $controlbuttons = []; if ($formdata->sec > 1) { $controlbuttons['prev'] = ['type' => 'submit', 'class' => 'btn btn-secondary', @@ -1201,13 +1201,13 @@ public function print_survey($userid=false, $quser) { } /** + * @param $formdata * @param int $section * @param string $message - * @param $formdata * @return bool|void * @throws coding_exception */ - private function survey_render($section = 1, $message = '', &$formdata) { + private function survey_render(&$formdata, $section = 1, $message = '') { $this->usehtmleditor = null; @@ -1257,7 +1257,7 @@ private function survey_render($section = 1, $message = '', &$formdata) { $this->page->add_to_page('questions', $this->renderer->question_output($this->questions[$questionid], (isset($this->responses[$formdata->rid]) ? $this->responses[$formdata->rid] : []), - [], $i, $this->usehtmleditor)); + $i, $this->usehtmleditor, [])); } $this->print_survey_end($section, $numsections); @@ -1428,7 +1428,7 @@ private function print_survey_end($section, $numsections) { } // Blankquestionnaire : if we are printing a blank questionnaire. - public function survey_print_render($message = '', $referer='', $courseid, $rid=0, $blankquestionnaire=false) { + public function survey_print_render($courseid, $message = '', $referer='', $rid=0, $blankquestionnaire=false) { global $DB, $CFG; if (! $course = $DB->get_record("course", array("id" => $courseid))) { @@ -1521,8 +1521,8 @@ public function survey_print_render($message = '', $referer='', $courseid, $rid= } else { $dependants = []; } - $output .= $this->renderer->question_output($this->questions[$questionid], $this->responses[0] ?? [], $dependants, - $i++, null); + $output .= $this->renderer->question_output($this->questions[$questionid], $this->responses[0] ?? [], + $i++, null, $dependants); $this->page->add_to_page('questions', $output); $output = ''; } @@ -2212,7 +2212,7 @@ private function get_formatted_answers_for_emails($answers) { private function response_send_email($rid, $email) { global $CFG; - $submission = $this->generate_csv($rid, '', null, 1, 0); + $submission = $this->generate_csv(0, $rid, '', null, 1); if (!empty($submission)) { $answers = $this->get_formatted_answers_for_emails($submission); } else { @@ -3044,7 +3044,7 @@ protected function process_csv_row(array &$row, /* {{{ proto array survey_generate_csv(int surveyid) Exports the results of a survey to an array. */ - public function generate_csv($rid='', $userid='', $choicecodes=1, $choicetext=0, $currentgroupid, $showincompletes=0, + public function generate_csv($currentgroupid, $rid='', $userid='', $choicecodes=1, $choicetext=0, $showincompletes=0, $rankaverages=0) { global $DB; @@ -3652,8 +3652,8 @@ public function response_analysis($rid, $resps, $compare, $isgroupmember, $allre $usergraph = get_config('questionnaire', 'usergraph'); if ($usergraph && $this->survey->chart_type) { $this->page->add_to_page('feedbackcharts', - draw_chart ($feedbacktype = 'global', $this->survey->chart_type, $labels, - $score, $allscore, $sectionlabel, $groupname, $allresponses)); + draw_chart ($feedbacktype = 'global', $labels, $groupname, + $allresponses, $this->survey->chart_type, $score, $allscore, $sectionlabel)); } // Display class or group score. Pending chart library decision to display? // Find out if this feedback sectionlabel has a pipe separator. @@ -3826,8 +3826,8 @@ public function response_analysis($rid, $resps, $compare, $isgroupmember, $allre if ($usergraph && $this->survey->chart_type) { $this->page->add_to_page('feedbackcharts', - draw_chart($feedbacktype = 'sections', $this->survey->chart_type, array_values($chartlabels), - array_values($scorepercent), array_values($allscorepercent), $sectionlabel, $groupname, $allresponses)); + draw_chart($feedbacktype = 'sections', array_values($chartlabels), $groupname, + $allresponses, $this->survey->chart_type, array_values($scorepercent), array_values($allscorepercent), $sectionlabel)); } if ($this->survey->feedbackscores) { $this->page->add_to_page('feedbackscores', html_writer::table($table)); diff --git a/questions.php b/questions.php index 3a486185..20a1c876 100644 --- a/questions.php +++ b/questions.php @@ -50,7 +50,7 @@ $PAGE->set_url($url); $PAGE->set_context($context); -$questionnaire = new questionnaire(0, $questionnaire, $course, $cm); +$questionnaire = new questionnaire($course, $cm, 0, $questionnaire); // Add renderer and page objects to the questionnaire object for display use. $questionnaire->add_renderer($PAGE->get_renderer('mod_questionnaire')); @@ -305,7 +305,7 @@ // Reload the form data if called for... if ($reload) { unset($questionsform); - $questionnaire = new questionnaire($questionnaire->id, null, $course, $cm); + $questionnaire = new questionnaire($course, $cm, $questionnaire->id, null); // Add renderer and page objects to the questionnaire object for display use. $questionnaire->add_renderer($PAGE->get_renderer('mod_questionnaire')); $questionnaire->add_page(new \mod_questionnaire\output\questionspage()); diff --git a/report.php b/report.php index a5120bae..7822234c 100755 --- a/report.php +++ b/report.php @@ -62,7 +62,7 @@ require_course_login($course, true, $cm); -$questionnaire = new questionnaire(0, $questionnaire, $course, $cm); +$questionnaire = new questionnaire($course, $cm, 0, $questionnaire); // Add renderer and page objects to the questionnaire object for display use. $questionnaire->add_renderer($PAGE->get_renderer('mod_questionnaire')); @@ -489,7 +489,7 @@ $emailroles = optional_param('emailroles', 0, PARAM_INT); $emailextra = optional_param('emailextra', '', PARAM_RAW); - $output = $questionnaire->generate_csv('', $user, $choicecodes, $choicetext, $currentgroupid, $showincompletes, + $output = $questionnaire->generate_csv($currentgroupid, '', $user, $choicecodes, $choicetext, $showincompletes, $rankaverages); $columns = $output[0]; diff --git a/show_nonrespondents.php b/show_nonrespondents.php index 09284847..15707946 100644 --- a/show_nonrespondents.php +++ b/show_nonrespondents.php @@ -78,7 +78,7 @@ $url = new moodle_url('/mod/questionnaire/show_nonrespondents.php', array('id' => $cm->id)); $PAGE->set_url($url); -$questionnaire = new questionnaire($sid, $questionnaire, $course, $cm); +$questionnaire = new questionnaire($course, $cm, $sid, $questionnaire); // Add renderer and page objects to the questionnaire object for display use. $questionnaire->add_renderer($PAGE->get_renderer('mod_questionnaire')); diff --git a/tests/csvexport_test.php b/tests/csvexport_test.php index e24472ef..461c16d0 100644 --- a/tests/csvexport_test.php +++ b/tests/csvexport_test.php @@ -70,17 +70,17 @@ public function test_csvexport() { $questionnaires = $qdg->questionnaires(); foreach ($questionnaires as $questionnaire) { list ($course, $cm) = get_course_and_cm_from_instance($questionnaire->id, 'questionnaire', $questionnaire->course); - $questionnaireinst = new questionnaire(0, $questionnaire, $course, $cm); + $questionnaireinst = new questionnaire($course, $cm, 0, $questionnaire); // Test for only complete responses. - $newoutput = $this->get_csv_text($questionnaireinst->generate_csv('', '', 0, 0, 0, 0)); + $newoutput = $this->get_csv_text($questionnaireinst->generate_csv(0, '', '', 0, 0, 0)); $this->assertEquals(count($newoutput), count($this->expected_complete_output())); foreach ($newoutput as $key => $output) { $this->assertEquals($this->expected_complete_output()[$key], $output); } // Test for all responses. - $newoutput = $this->get_csv_text($questionnaireinst->generate_csv('', '', 0, 0, 0, 1)); + $newoutput = $this->get_csv_text($questionnaireinst->generate_csv(0, '', '', 0, 0, 1)); $this->assertEquals(count($newoutput), count($this->expected_incomplete_output())); foreach ($newoutput as $key => $output) { $this->assertEquals($this->expected_incomplete_output()[$key], $output); diff --git a/tests/generator/lib.php b/tests/generator/lib.php index 406854c9..f2cdcb82 100644 --- a/tests/generator/lib.php +++ b/tests/generator/lib.php @@ -109,7 +109,7 @@ public function create_instance($record = null, array $options = null) { $instance = parent::create_instance($record, (array)$options); $cm = get_coursemodule_from_instance('questionnaire', $instance->id); $course = get_course($cm->course); - $questionnaire = new questionnaire(0, $instance, $course, $cm, false); + $questionnaire = new questionnaire($course, $cm, 0, $instance, false); $this->questionnaires[$instance->id] = $questionnaire; @@ -216,7 +216,7 @@ public function create_test_questionnaire($course, $qtype = null, $questiondata $questiondata['content'] = isset($questiondata['content']) ? $questiondata['content'] : 'Test content'; $this->create_question($questionnaire, $questiondata, $choicedata); } - $questionnaire = new questionnaire($questionnaire->id, null, $course, $cm, true); + $questionnaire = new questionnaire($course, $cm, $questionnaire->id, null, true); return $questionnaire; } @@ -501,12 +501,12 @@ protected function add_response_choice($questionresponse, $responseid) { /** * Create response to questionnaire. * - * @param array|stdClass $record * @param array $questionresponses + * @param array|stdClass $record * @param boolean $complete Whether the response is complete or not. * @return stdClass the discussion object */ - public function create_response($record = null, $questionresponses, $complete = true) { + public function create_response($questionresponses, $record = null, $complete = true) { global $DB; // Increment the response count. @@ -634,7 +634,7 @@ public function generate_response($questionnaire, $questions, $userid, $complete } } - return $this->create_response(['questionnaireid' => $questionnaire->id, 'userid' => $userid], $responses, $complete); + return $this->create_response($responses, ['questionnaireid' => $questionnaire->id, 'userid' => $userid], $complete); } public function create_and_fully_populate($coursecount = 4, $studentcount = 20, $questionnairecount = 2, diff --git a/tests/generator_test.php b/tests/generator_test.php index 9fbb8b1e..43557a53 100644 --- a/tests/generator_test.php +++ b/tests/generator_test.php @@ -73,7 +73,7 @@ public function test_create_content() { $generator = $this->getDataGenerator()->get_plugin_generator('mod_questionnaire'); $questionnaire = $generator->create_instance(array('course' => $course->id)); $cm = get_coursemodule_from_instance('questionnaire', $questionnaire->id); - $questionnaire = new questionnaire($questionnaire->id, null, $course, $cm, false); + $questionnaire = new questionnaire($course, $cm, $questionnaire->id, null, false); $newcontent = array( 'title' => 'New title', diff --git a/tests/questiontypes_test.php b/tests/questiontypes_test.php index cc9e95f9..5d08c99b 100644 --- a/tests/questiontypes_test.php +++ b/tests/questiontypes_test.php @@ -129,7 +129,7 @@ private function create_test_question($qtype, $questionclass, $questiondata = ar } // Questionnaire object should now have question record(s). - $questionnaire = new questionnaire($questionnaire->id, null, $course, $cm, true); + $questionnaire = new questionnaire($course, $cm, $questionnaire->id, null, true); $this->assertTrue($DB->record_exists('questionnaire_question', array('id' => $question->id))); $this->assertEquals('array', gettype($questionnaire->questions)); $this->assertTrue(array_key_exists($question->id, $questionnaire->questions)); diff --git a/tests/responsetypes_test.php b/tests/responsetypes_test.php index fb1c78e0..e6d5a730 100644 --- a/tests/responsetypes_test.php +++ b/tests/responsetypes_test.php @@ -299,7 +299,7 @@ public function create_test_questionnaire($qtype, $questiondata = [], $choicedat $questiondata['content'] = isset($questiondata['content']) ? $questiondata['content'] : 'Test content'; $generator->create_question($questionnaire, $questiondata, $choicedata); - $questionnaire = new questionnaire($questionnaire->id, null, $course, $cm, true); + $questionnaire = new questionnaire( $course, $cm, $questionnaire->id, null, true); return $questionnaire; } diff --git a/view.php b/view.php index 20781b0f..9f3f400b 100644 --- a/view.php +++ b/view.php @@ -47,7 +47,7 @@ $PAGE->set_url($url); $PAGE->set_context($context); -$questionnaire = new questionnaire(0, $questionnaire, $course, $cm); +$questionnaire = new questionnaire($course, $cm, 0, $questionnaire); // Add renderer and page objects to the questionnaire object for display use. $questionnaire->add_renderer($PAGE->get_renderer('mod_questionnaire')); $questionnaire->add_page(new \mod_questionnaire\output\viewpage());