From e7ab65f68ede1c64545a0e51f3e7a299788a44b5 Mon Sep 17 00:00:00 2001 From: Tim Hunt Date: Tue, 21 Nov 2023 17:18:22 +0000 Subject: [PATCH] MDL-80210 quiz: fix default for reviewmaxmarks when upgrading It is correct that the database default should be 0, to match other similar columns, but when sites are upgraded, we need to set the settings for all existing quizzes to match the previous behaviour. --- mod/quiz/db/upgrade.php | 10 ++++++++++ mod/quiz/version.php | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/mod/quiz/db/upgrade.php b/mod/quiz/db/upgrade.php index 808cbda40a7..24b7b4244a8 100644 --- a/mod/quiz/db/upgrade.php +++ b/mod/quiz/db/upgrade.php @@ -197,5 +197,15 @@ function xmldb_quiz_upgrade($oldversion) { // Automatically generated Moodle v4.3.0 release upgrade line. // Put any upgrade step following this. + if ($oldversion < 2023112300) { + + // Set the value for all existing rows to match the previous behaviour, + // but only where users have not already set another value. + $DB->set_field('quiz', 'reviewmaxmarks', 0x11110, ['reviewmaxmarks' => 0]); + + // Quiz savepoint reached. + upgrade_mod_savepoint(true, 2023112300, 'quiz'); + } + return true; } diff --git a/mod/quiz/version.php b/mod/quiz/version.php index 75e5bdde2be..33a399048fe 100644 --- a/mod/quiz/version.php +++ b/mod/quiz/version.php @@ -24,6 +24,6 @@ defined('MOODLE_INTERNAL') || die(); -$plugin->version = 2023100900; +$plugin->version = 2023112300; $plugin->requires = 2023100400; $plugin->component = 'mod_quiz';