diff --git a/backup/moodle2/backup_zoom_stepslib.php b/backup/moodle2/backup_zoom_stepslib.php index 3d82e2e4..6442c49a 100644 --- a/backup/moodle2/backup_zoom_stepslib.php +++ b/backup/moodle2/backup_zoom_stepslib.php @@ -40,7 +40,7 @@ class backup_activity_structure_step extends \backup_activity_structure_step { protected function define_structure() { // Define the root element describing the zoom instance. $zoom = new backup_nested_element('zoom', ['id'], [ - 'intro', 'introformat', 'grade', 'meeting_id', 'start_url', 'join_url', 'created_at', 'host_id', 'name', + 'intro', 'introformat', 'grade', 'meeting_id', 'join_url', 'created_at', 'host_id', 'name', 'start_time', 'timemodified', 'recurring', 'recurrence_type', 'repeat_interval', 'weekly_days', 'monthly_day', 'monthly_week', 'monthly_week_day', 'monthly_repeat_option', 'end_times', 'end_date_time', 'end_date_option', 'webinar', 'duration', 'timezone', 'password', 'option_jbh', 'option_start_type', 'option_host_video', diff --git a/backup/moodle2/restore_zoom_stepslib.php b/backup/moodle2/restore_zoom_stepslib.php index 8997bc47..599fed1d 100755 --- a/backup/moodle2/restore_zoom_stepslib.php +++ b/backup/moodle2/restore_zoom_stepslib.php @@ -69,7 +69,6 @@ protected function process_zoom($data) { $data = populate_zoom_from_response($data, $updateddata); $data->exists_on_zoom = ZOOM_MEETING_EXISTS; } catch (moodle_exception $e) { - $data->start_url = ''; $data->join_url = ''; $data->meeting_id = 0; $data->exists_on_zoom = ZOOM_MEETING_EXPIRED; diff --git a/db/install.xml b/db/install.xml index c12120c7..175b0513 100755 --- a/db/install.xml +++ b/db/install.xml @@ -12,7 +12,6 @@ - diff --git a/db/upgrade.php b/db/upgrade.php index 3e6c577c..0fdc717d 100755 --- a/db/upgrade.php +++ b/db/upgrade.php @@ -915,5 +915,23 @@ function xmldb_zoom_upgrade($oldversion) { upgrade_mod_savepoint(true, 2023080202, 'zoom'); } + if ($oldversion < 2023111600) { + // Issue #326: Drop start_url from database + + // Start zoom table modifications. + $table = new xmldb_table('zoom'); + + // Define field status to be dropped from zoom. + $field = new xmldb_field('start_url'); + + // Conditionally launch drop field status. + if ($dbman->field_exists($table, $field)) { + $dbman->drop_field($table, $field); + } + + // Zoom savepoint reached. + upgrade_mod_savepoint(true, 2023111600, 'zoom'); + } + return true; } diff --git a/lib.php b/lib.php index 9a3c9a78..0a02ff36 100755 --- a/lib.php +++ b/lib.php @@ -277,7 +277,7 @@ function populate_zoom_from_response(stdClass $zoom, stdClass $response) { $newzoom = clone $zoom; - $samefields = ['start_url', 'join_url', 'created_at', 'timezone']; + $samefields = ['join_url', 'created_at', 'timezone']; foreach ($samefields as $field) { if (isset($response->$field)) { $newzoom->$field = $response->$field; diff --git a/version.php b/version.php index 164cabfe..17389111 100755 --- a/version.php +++ b/version.php @@ -25,7 +25,7 @@ defined('MOODLE_INTERNAL') || die(); $plugin->component = 'mod_zoom'; -$plugin->version = 2023111000; +$plugin->version = 2023111600; $plugin->release = 'v5.1.2'; $plugin->requires = 2019052000; $plugin->maturity = MATURITY_STABLE;