From 3009095bc97b55fd5659d0e9cd7f1aad0be00312 Mon Sep 17 00:00:00 2001 From: Arnaud Trouve Date: Tue, 25 Oct 2016 23:38:40 +0200 Subject: [PATCH] MDL-56547 admin : add check on user deletion Check if the target user is not already deleted and print an explicit error in that case. --- admin/user.php | 5 ++++- lang/en/error.php | 1 + 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/admin/user.php b/admin/user.php index 2dffa223490..42665249adc 100644 --- a/admin/user.php +++ b/admin/user.php @@ -70,6 +70,9 @@ $user = $DB->get_record('user', array('id'=>$delete, 'mnethostid'=>$CFG->mnet_localhost_id), '*', MUST_EXIST); + if ($user->deleted) { + print_error('usernotdeleteddeleted', 'error'); + } if (is_siteadmin($user->id)) { print_error('useradminodelete', 'error'); } @@ -86,7 +89,7 @@ echo $OUTPUT->confirm(get_string('deletecheckfull', '', "'$fullname'"), $deletebutton, $returnurl); echo $OUTPUT->footer(); die; - } else if (data_submitted() and !$user->deleted) { + } else if (data_submitted()) { if (delete_user($user)) { \core\session\manager::gc(); // Remove stale sessions. redirect($returnurl); diff --git a/lang/en/error.php b/lang/en/error.php index f7c5ac85b60..caceae0f0b8 100644 --- a/lang/en/error.php +++ b/lang/en/error.php @@ -560,6 +560,7 @@ $string['usernotaddederror'] = 'User not added - error'; $string['usernotaddedregistered'] = 'User not added - already registered'; $string['usernotavailable'] = 'The details of this user are not available to you'; $string['usernotdeletedadmin'] = 'User not deleted - can not delete administrator accounts'; +$string['usernotdeleteddeleted'] = 'This user has already been deleted.'; $string['usernotdeletederror'] = 'User not deleted - error'; $string['usernotdeletedmissing'] = 'User not deleted - could not find the username'; $string['usernotdeletedoff'] = 'User not deleted - deleting not allowed';