diff --git a/admin/tool/dataprivacy/classes/api.php b/admin/tool/dataprivacy/classes/api.php index 82b78b05f05..9f1177f0ce0 100644 --- a/admin/tool/dataprivacy/classes/api.php +++ b/admin/tool/dataprivacy/classes/api.php @@ -234,13 +234,16 @@ class api { $creationmethod = data_request::DATAREQUEST_CREATION_MANUAL, $notify = null ) { - global $USER, $ADMIN; + global $USER; - if (null === $notify && data_request::DATAREQUEST_CREATION_AUTO == $creationmethod) { - // If the request was automatically created, then do not notify unless explicitly set. - $notify = false; - } else { - $notify = true; + if (null === $notify) { + // Only if notifications have not been decided by caller. + if ( data_request::DATAREQUEST_CREATION_AUTO == $creationmethod) { + // If the request was automatically created, then do not notify unless explicitly set. + $notify = false; + } else { + $notify = true; + } } $datarequest = new data_request(); @@ -251,7 +254,7 @@ class api { // NOTE: This should probably be changed. We should leave the default value for $requestinguser if // the request is not explicitly created by a specific user. $requestinguser = (isguestuser() && $creationmethod == data_request::DATAREQUEST_CREATION_AUTO) ? - $ADMIN->id : $USER->id; + get_admin()->id : $USER->id; // The user making the request. $datarequest->set('requestedby', $requestinguser); // Set status. diff --git a/admin/tool/dataprivacy/tests/user_deleted_observer_test.php b/admin/tool/dataprivacy/tests/user_deleted_observer_test.php index 64a49cb9e90..5a8b2083d9a 100644 --- a/admin/tool/dataprivacy/tests/user_deleted_observer_test.php +++ b/admin/tool/dataprivacy/tests/user_deleted_observer_test.php @@ -81,6 +81,7 @@ class tool_dataprivacy_user_deleted_observer_testcase extends advanced_testcase */ public function test_create_delete_data_request_export_data_request_preexists() { $this->resetAfterTest(); + $this->setAdminUser(); // Enable automatic creation of delete data requests. set_config('automaticdeletionrequests', 1, 'tool_dataprivacy'); @@ -106,6 +107,7 @@ class tool_dataprivacy_user_deleted_observer_testcase extends advanced_testcase */ public function test_create_delete_data_request_ongoing_delete_data_request_preexists() { $this->resetAfterTest(); + $this->setAdminUser(); // Enable automatic creation of delete data requests. set_config('automaticdeletionrequests', 1, 'tool_dataprivacy'); @@ -130,6 +132,7 @@ class tool_dataprivacy_user_deleted_observer_testcase extends advanced_testcase */ public function test_create_delete_data_request_canceled_delete_data_request_preexists() { $this->resetAfterTest(); + $this->setAdminUser(); // Enable automatic creation of delete data requests. set_config('automaticdeletionrequests', 1, 'tool_dataprivacy'); @@ -159,6 +162,7 @@ class tool_dataprivacy_user_deleted_observer_testcase extends advanced_testcase */ public function test_create_delete_data_request_completed_delete_data_request_preexists() { $this->resetAfterTest(); + $this->setAdminUser(); // Enable automatic creation of delete data requests. set_config('automaticdeletionrequests', 1, 'tool_dataprivacy');