Skip to content

Commit

Permalink
MDL-83691 core_sms: Avoid saving unnecessary data in the database
Browse files Browse the repository at this point in the history
  • Loading branch information
meirzamoodle committed Dec 13, 2024
1 parent 0888a6d commit 7dac99c
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 2 deletions.
19 changes: 19 additions & 0 deletions lib/db/upgrade.php
Original file line number Diff line number Diff line change
Expand Up @@ -1303,5 +1303,24 @@ function xmldb_main_upgrade($oldversion) {
upgrade_main_savepoint(true, 2024112900.02);
}

if ($oldversion < 2024120500.01) {
$smsgateways = $DB->get_records('sms_gateways');
foreach ($smsgateways as $gateway) {
$newconfig = json_decode($gateway->config);
// Continue only if either the `returnurl` OR the `saveandreturn` property exists.
if (property_exists($newconfig, "returnurl") || property_exists($newconfig, "saveandreturn")) {
// Remove unnecessary data in the config.
unset($newconfig->returnurl, $newconfig->saveandreturn);

// Update the record with the new config.
$gateway->config = json_encode($newconfig);
$DB->update_record('sms_gateways', $gateway);
}
}

// Main savepoint reached.
upgrade_main_savepoint(true, 2024120500.01);
}

return true;
}
3 changes: 2 additions & 1 deletion sms/configure.php
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,8 @@
$manager = \core\di::get(\core_sms\manager::class);
$smsgateway = $data->smsgateway;
$gatewayname = $data->name;
unset($data->smsgateway, $data->name, $data->id);
// The $data will go into the database config column. If any data is not needed, unset it here.
unset($data->smsgateway, $data->name, $data->id, $data->saveandreturn, $data->returnurl);
if (!empty($id)) {
$gatewayinstance = $manager->get_gateway_instances(['id' => $id]);
$gatewayinstance = reset($gatewayinstance);
Expand Down
2 changes: 1 addition & 1 deletion version.php
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@

defined('MOODLE_INTERNAL') || die();

$version = 2024120500.00; // YYYYMMDD = weekly release date of this DEV branch.
$version = 2024120500.01; // YYYYMMDD = weekly release date of this DEV branch.
// RR = release increments - 00 in DEV branches.
// .XX = incremental changes.
$release = '5.0dev (Build: 20241205)'; // Human-friendly version name
Expand Down

0 comments on commit 7dac99c

Please sign in to comment.