Update function 'local_webhooks_restore_backup'

Signed-off-by: Valentin Popov <info@valentineus.link>
This commit is contained in:
Valentin Popov 2018-03-13 01:43:23 +04:00
parent 95c54f8262
commit 490b8bb170
Signed by: Valentin Popov
GPG Key ID: 269A00ACA90A8EA3

25
lib.php
View File

@ -147,7 +147,7 @@ function local_webhooks_create_record($record) {
local_webhooks_cache_reset(); local_webhooks_cache_reset();
/* Event notification */ /* Event notification */
local_webhooks_events::service_added($result); local_webhooks_events::service_added($serviceid);
return $serviceid; return $serviceid;
} }
@ -247,22 +247,27 @@ function local_webhooks_create_backup() {
/** /**
* Restore from a backup. * Restore from a backup.
* *
* @param string $data * @param string $data
* @param boolean $deleterecords
*/ */
function local_webhooks_restore_backup($data, $deleterecords = false) { function local_webhooks_restore_backup($backup) {
$listrecords = local_webhooks_deserialization_data($data); global $DB;
if (boolval($deleterecords)) { $serialize = gzuncompress(base64_decode($backup));
local_webhooks_delete_all_records(); $records = unserialize($serialize);
$transaction = $DB->start_delegated_transaction();
local_webhooks_delete_all_records();
foreach ($records as $record) {
local_webhooks_create_record($record);
} }
foreach ($listrecords as $servicerecord) { $transaction->allow_commit();
local_webhooks_create_record($servicerecord);
}
/* Event notification */ /* Event notification */
local_webhooks_events::backup_restored(); local_webhooks_events::backup_restored();
return true;
} }
/** /**