Skip to content

Commit

Permalink
MDL-63919 tool_dataprivacy: admin & notify fixes
Browse files Browse the repository at this point in the history
This includes the following:

1) Replace $ADMIN->id by get_admin()->id. The former doesn't exist.
2) Only change the notify parameter when it has not been specified
   at creation time (null). If specified, observe it.
3) Set the current user in tests to admin, able to create those
   requests.
  • Loading branch information
stronk7 committed Nov 10, 2018
1 parent 5c0f8dc commit baf3fd4
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 7 deletions.
17 changes: 10 additions & 7 deletions admin/tool/dataprivacy/classes/api.php
Original file line number Diff line number Diff line change
Expand Up @@ -234,13 +234,16 @@ public static function create_data_request($foruser, $type, $comments = '',
$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();
Expand All @@ -251,7 +254,7 @@ public static function create_data_request($foruser, $type, $comments = '',
// 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.
Expand Down
4 changes: 4 additions & 0 deletions admin/tool/dataprivacy/tests/user_deleted_observer_test.php
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,7 @@ public function test_create_delete_data_request_automatic_creation_disabled() {
*/
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');
Expand All @@ -106,6 +107,7 @@ public function test_create_delete_data_request_export_data_request_preexists()
*/
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');
Expand All @@ -130,6 +132,7 @@ public function test_create_delete_data_request_ongoing_delete_data_request_pree
*/
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');
Expand Down Expand Up @@ -159,6 +162,7 @@ public function test_create_delete_data_request_canceled_delete_data_request_pre
*/
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');
Expand Down

0 comments on commit baf3fd4

Please sign in to comment.