MDL-12020 can not bulk delete users with the same email - new username collision

This commit is contained in:
skodak 2007-11-04 13:51:26 +00:00
parent 18abbd4ff3
commit 6d11d0ee0e

View File

@ -2867,11 +2867,17 @@ function delete_user($user) {
// now do a final accesslib cleanup - removes all role assingments in user context and context itself
delete_context(CONTEXT_USER, $user->id);
// workaround for bulk deletes of users with the same email address
$delname = addslashes("$user->email.".time());
while (record_exists('user', 'username', $delname)) { // no need to use mnethostid here
$delname++;
}
// mark internal user record as "deleted"
$updateuser = new object();
$updateuser->id = $user->id;
$updateuser->deleted = 1;
$updateuser->username = addslashes("$user->email.".time()); // Remember it just in case
$updateuser->username = $delname; // Remember it just in case
$updateuser->email = ''; // Clear this field to free it up
$updateuser->idnumber = ''; // Clear this field to free it up
$updateuser->timemodified = time();