summaryrefslogtreecommitdiff
path: root/modules/user/user.module
diff options
context:
space:
mode:
Diffstat (limited to 'modules/user/user.module')
-rw-r--r--modules/user/user.module12
1 files changed, 8 insertions, 4 deletions
diff --git a/modules/user/user.module b/modules/user/user.module
index 358b4cec5..92a55bcf4 100644
--- a/modules/user/user.module
+++ b/modules/user/user.module
@@ -417,6 +417,9 @@ function user_save($account, $edit = array(), $category = 'account') {
// Avoid overwriting an existing password with a blank password.
unset($edit['pass']);
}
+ if (isset($edit['mail'])) {
+ $edit['mail'] = trim($edit['mail']);
+ }
// Load the stored entity, if any.
if (!empty($account->uid) && !isset($account->original)) {
@@ -562,9 +565,6 @@ function user_save($account, $edit = array(), $category = 'account') {
if (!isset($edit['created'])) {
$edit['created'] = REQUEST_TIME;
}
- if (isset($edit['mail'])) {
- $edit['mail'] = trim($edit['mail']);
- }
$success = drupal_write_record('users', $edit);
if ($success === FALSE) {
// On a failed INSERT some other existing user's uid may be returned.
@@ -655,7 +655,6 @@ function user_validate_name($name) {
* If the address is valid, nothing is returned.
*/
function user_validate_mail($mail) {
- $mail = trim($mail);
if (!$mail) {
return t('You must enter an e-mail address.');
}
@@ -1203,6 +1202,11 @@ function user_account_form_validate($form, &$form_state) {
}
}
+ // Trim whitespace from mail, to prevent confusing 'e-mail not valid'
+ // warnings often caused by cutting and pasting.
+ $mail = trim($form_state['values']['mail']);
+ form_set_value($form['account']['mail'], $mail, $form_state);
+
// Validate the e-mail address, and check if it is taken by an existing user.
if ($error = user_validate_mail($form_state['values']['mail'])) {
form_set_error('mail', $error);