Same name and namespace in other branches
  1. 4.6.x modules/user.module \user_login()
  2. 4.7.x modules/user.module \user_login()
  3. 5.x modules/user/user.module \user_login()
  4. 6.x modules/user/user.module \user_login()

Form builder; the main user login form.

Related topics

6 string references to 'user_login'
hook_page_alter in modules/system/system.api.php
Perform alterations before a page is rendered.
TriggerOtherTestCase::testActionsUser in modules/trigger/trigger.test
Tests triggering on user create and user login.
TriggerUserTokenTestCase::testUserTriggerTokenReplacement in modules/trigger/trigger.test
Tests a variety of token replacements in actions.
trigger_test_action_info in modules/trigger/tests/trigger_test.module
Implements hook_action_info().
trigger_user_login in modules/trigger/trigger.module
Implements hook_user_login().

... See full list

File

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

Code

function user_login($form, &$form_state) {
  global $user;

  // If we are already logged on, go to the user page instead.
  if ($user->uid) {
    drupal_goto('user/' . $user->uid);
  }

  // Display login form:
  $form['name'] = array(
    '#type' => 'textfield',
    '#title' => t('Username'),
    '#size' => 60,
    '#maxlength' => USERNAME_MAX_LENGTH,
    '#required' => TRUE,
  );
  $form['name']['#description'] = t('Enter your @s username.', array(
    '@s' => variable_get('site_name', 'Drupal'),
  ));
  $form['pass'] = array(
    '#type' => 'password',
    '#title' => t('Password'),
    '#description' => t('Enter the password that accompanies your username.'),
    '#required' => TRUE,
  );
  $form['#validate'] = user_login_default_validators();
  $form['actions'] = array(
    '#type' => 'actions',
  );
  $form['actions']['submit'] = array(
    '#type' => 'submit',
    '#value' => t('Log in'),
  );
  return $form;
}