From 91472736408b2185563068cf3a2280cded5acecb Mon Sep 17 00:00:00 2001 From: Arto Nieminen Date: Fri, 7 Jun 2019 10:27:47 +0300 Subject: [PATCH] MDL-53778 quiz settings: Ensure that disabled checkboxes have value 0 --- mod/quiz/lib.php | 8 ++++++++ mod/quiz/mod_form.php | 5 ----- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/mod/quiz/lib.php b/mod/quiz/lib.php index 9ece885fcf8..5e0949d6015 100644 --- a/mod/quiz/lib.php +++ b/mod/quiz/lib.php @@ -1128,6 +1128,14 @@ function quiz_process_options($quiz) { $quiz->reviewoverallfeedback = quiz_review_option_form_to_db($quiz, 'overallfeedback'); $quiz->reviewattempt |= mod_quiz_display_options::DURING; $quiz->reviewoverallfeedback &= ~mod_quiz_display_options::DURING; + + // Ensure that disabled checkboxes in completion settings are set to 0. + if (empty($quiz->completionusegrade)) { + $quiz->completionpass = 0; + } + if (empty($quiz->completionpass)) { + $quiz->completionattemptsexhausted = 0; + } } /** diff --git a/mod/quiz/mod_form.php b/mod/quiz/mod_form.php index fda0558604c..e372bc2852c 100644 --- a/mod/quiz/mod_form.php +++ b/mod/quiz/mod_form.php @@ -517,11 +517,6 @@ class mod_quiz_mod_form extends moodleform_mod { $toform[$name] = $value; } } - - // Completion settings check. - if (empty($toform['completionusegrade'])) { - $toform['completionpass'] = 0; // Forced unchecked. - } } public function validation($data, $files) {