1.20.x user.module user_login_name_validate($form, &$form_state)

First phase validation handler for the login form.

Check for invalid email addresses and blocked accounts.

File

modules/user/user.module, line 1767
Enables the user registration and login system.

Code

function user_login_name_validate($form, &$form_state) {
  if (isset($form_state['values']['name'])) {
    $name = $form_state['values']['name'];
    $credentials = config_get('system.core', 'user_login_method');
    if ($credentials !== USER_LOGIN_USERNAME_ONLY) {
      if ($account = db_query("SELECT * FROM {users} WHERE mail = :mail", array(':mail' => $name))->fetchObject()) {
        $name = $account->name;
      }
      // If can't find account, check if valid email address.
      elseif ($credentials === USER_LOGIN_EMAIL_ONLY && !valid_email_address($name)) {
        form_set_error('name', t('The e-mail address %email is not valid.', array('%email' => $form_state['values']['name'])));
      }
    }
    // If can find account, check if user is blocked.
    if ($name && user_is_blocked($name)) {
      form_set_error('name', t('The account for %name has not been activated or is blocked.', array('%name' => $form_state['values']['name'])));
    }
  }
}