MDL-53139 admin: case diff issue with email
This commit is contained in:
@@ -568,8 +568,18 @@ if ($formdata = $mform2->is_cancelled()) {
|
||||
}
|
||||
if ($existinguser->$column !== $user->$column) {
|
||||
if ($column === 'email') {
|
||||
if ($DB->record_exists('user', array('email'=>$user->email))) {
|
||||
if ($noemailduplicates) {
|
||||
$select = $DB->sql_like('email', ':email', false, true, false, '|');
|
||||
$params = array('email' => $DB->sql_like_escape($user->email, '|'));
|
||||
if ($DB->record_exists_select('user', $select , $params)) {
|
||||
|
||||
$changeincase = core_text::strtolower($existinguser->$column) === core_text::strtolower(
|
||||
$user->$column);
|
||||
|
||||
if ($changeincase) {
|
||||
// If only case is different then switch to lower case and carry on.
|
||||
$user->$column = core_text::strtolower($user->$column);
|
||||
continue;
|
||||
} else if ($noemailduplicates) {
|
||||
$upt->track('email', $stremailduplicate, 'error');
|
||||
$upt->track('status', $strusernotupdated, 'error');
|
||||
$userserrors++;
|
||||
@@ -1182,7 +1192,10 @@ while ($linenum <= $previewrows and $fields = $cir->next()) {
|
||||
if (!validate_email($rowcols['email'])) {
|
||||
$rowcols['status'][] = get_string('invalidemail');
|
||||
}
|
||||
if ($DB->record_exists('user', array('email'=>$rowcols['email']))) {
|
||||
|
||||
$select = $DB->sql_like('email', ':email', false, true, false, '|');
|
||||
$params = array('email' => $DB->sql_like_escape($rowcols['email'], '|'));
|
||||
if ($DB->record_exists_select('user', $select , $params)) {
|
||||
$rowcols['status'][] = $stremailduplicate;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user