diff --git a/db/upgrade.php b/db/upgrade.php index b91c7428..9ade8467 100755 --- a/db/upgrade.php +++ b/db/upgrade.php @@ -874,7 +874,7 @@ function xmldb_zoom_upgrade($oldversion) { $table = new xmldb_table('zoom'); // Define and conditionally add field registration. - $field = new xmldb_field('registration', XMLDB_TYPE_INTEGER, '1', null, null, null, null, 'option_auto_recording'); + $field = new xmldb_field('registration', XMLDB_TYPE_INTEGER, '1', null, XMLDB_NOTNULL, null, '2', 'option_auto_recording'); if (!$dbman->field_exists($table, $field)) { $dbman->add_field($table, $field); } @@ -933,5 +933,20 @@ function xmldb_zoom_upgrade($oldversion) { upgrade_mod_savepoint(true, 2023111600, 'zoom'); } + if ($oldversion < 2024012500) { + // Version 5.1.0 incorrectly upgraded the zoom table's registration field. It should not be null and should default to 2. + $table = new xmldb_table('zoom'); + $field = new xmldb_field('registration', XMLDB_TYPE_INTEGER, '1', null, XMLDB_NOTNULL, null, '2', 'option_auto_recording'); + + // Launch change of nullability for field registration. + $dbman->change_field_notnull($table, $field); + + // Launch change of default for field registration. + $dbman->change_field_default($table, $field); + + // Zoom savepoint reached. + upgrade_mod_savepoint(true, 2024012500, 'zoom'); + } + return true; } diff --git a/version.php b/version.php index 8b4428d7..62d6a42d 100755 --- a/version.php +++ b/version.php @@ -25,7 +25,7 @@ defined('MOODLE_INTERNAL') || die(); $plugin->component = 'mod_zoom'; -$plugin->version = 2023121400; +$plugin->version = 2024012500; $plugin->release = 'v5.1.4'; $plugin->requires = 2019052000; $plugin->maturity = MATURITY_STABLE;