From b06f9b56f8d886ce10847f033f3447af44ab0cde Mon Sep 17 00:00:00 2001 From: Matthew Hilton Date: Thu, 4 Apr 2024 13:34:14 +1000 Subject: [PATCH] [#157] Fix quiz compatibility in newer versions of Moodle --- classes/form/quiz_override_form.php | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/classes/form/quiz_override_form.php b/classes/form/quiz_override_form.php index d35fd935..9a1f89ae 100644 --- a/classes/form/quiz_override_form.php +++ b/classes/form/quiz_override_form.php @@ -24,10 +24,11 @@ namespace local_assessfreq\form; +use mod_quiz\form\edit_override_form; + defined('MOODLE_INTERNAL') || die(); require_once("$CFG->libdir/formslib.php"); -require_once($CFG->dirroot . '/mod/quiz/override_form.php'); /** * Form to add override for quiz. @@ -36,7 +37,7 @@ * @copyright 2020 Matt Porritt * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ -class quiz_override_form extends \quiz_override_form { +class quiz_override_form extends edit_override_form { /** * Constructor. * @param object $cm course module object. @@ -54,6 +55,11 @@ public function __construct($cm, $quiz, $context, $override, $submitteddata = nu $this->groupid = 0; $this->userid = empty($override->userid) ? 0 : $override->userid; + // Added in Moodle 4.4+ by MDL-80300. + if (property_exists(edit_override_form::class, 'overrideid')) { + $this->overrideid = $override->id ?? 0; + } + \moodleform::__construct(null, null, 'post', '', ['class' => 'ignoredirty'], true, $submitteddata); }