class UserLoginBlock

Provides a 'User login' block.

Plugin annotation


@Plugin(
  id = "user_login_block",
  admin_label = @Translation("User login"),
  module = "user"
)

Hierarchy

Expanded class hierarchy of UserLoginBlock

File

drupal/core/modules/user/lib/Drupal/user/Plugin/Block/UserLoginBlock.php, line 23
Contains \Drupal\user\Plugin\Block\UserLoginBlock.

Namespace

Drupal\user\Plugin\Block
View source
class UserLoginBlock extends BlockBase {

  /**
   * Overrides \Drupal\block\BlockBase::access().
   */
  public function access() {
    return !$GLOBALS['user']->uid && !(arg(0) == 'user' && !is_numeric(arg(1)));
  }

  /**
   * {@inheritdoc}
   */
  public function build() {
    $form = drupal_get_form('user_login_form');
    unset($form['name']['#attributes']['autofocus']);
    unset($form['name']['#description']);
    unset($form['pass']['#description']);
    $form['name']['#size'] = 15;
    $form['pass']['#size'] = 15;
    $form['#action'] = url(current_path(), array(
      'query' => drupal_get_destination(),
      'external' => FALSE,
    ));

    // Build action links.
    $items = array();
    if (config('user.settings')
      ->get('register') != USER_REGISTER_ADMINISTRATORS_ONLY) {
      $items['create_account'] = l(t('Create new account'), 'user/register', array(
        'attributes' => array(
          'title' => t('Create a new user account.'),
          'class' => array(
            'create-account-link',
          ),
        ),
      ));
    }
    $items['request_password'] = l(t('Request new password'), 'user/password', array(
      'attributes' => array(
        'title' => t('Request new password via e-mail.'),
        'class' => array(
          'request-password-link',
        ),
      ),
    ));
    return array(
      'user_login_form' => $form,
      'user_links' => array(
        '#theme' => 'item_list',
        '#items' => $items,
      ),
    );
  }

}

Members

Namesort descending Modifiers Type Description Overrides
BlockBase::blockForm public function Returns the configuration form elements specific to this block plugin. 11
BlockBase::blockSubmit public function Adds block type-specific submission handling for the block form. 11
BlockBase::blockValidate public function Adds block type-specific validation for the block form.
BlockBase::form public function Implements \Drupal\block\BlockPluginInterface::form(). Overrides BlockPluginInterface::form 1
BlockBase::getConfig public function Returns the configuration data for the block plugin.
BlockBase::setConfig public function Sets a particular value in the block settings.
BlockBase::settings public function Returns plugin-specific settings for the block. Overrides BlockPluginInterface::settings 13
BlockBase::submit public function Implements \Drupal\block\BlockPluginInterface::submit(). Overrides BlockPluginInterface::submit
BlockBase::validate public function Implements \Drupal\block\BlockPluginInterface::validate(). Overrides BlockPluginInterface::validate
BlockBase::__construct public function Constructs a Drupal\Component\Plugin\PluginBase object. Overrides PluginBase::__construct 1
PluginBase::$configuration protected property Configuration information passed into the plugin. 1
PluginBase::$pluginDefinition protected property The plugin implementation definition.
PluginBase::$pluginId protected property The plugin_id.
PluginBase::getPluginDefinition public function Returns the definition of the plugin implementation. Overrides PluginInspectionInterface::getPluginDefinition
PluginBase::getPluginId public function Returns the plugin_id of the plugin instance. Overrides PluginInspectionInterface::getPluginId
UserLoginBlock::access public function Overrides \Drupal\block\BlockBase::access(). Overrides BlockBase::access
UserLoginBlock::build public function Builds and returns the renderable array for this block plugin. Overrides BlockPluginInterface::build