You are here

public function userloginbar::build in UserLoginBar 8

Implements \Drupal\block\BlockBase::blockBuild().

File

lib/Drupal/userloginbar/Plugin/Block/userloginbar.php, line 89
Contains \Drupal\userloginbar\Plugin\Block\userloginbar.

Class

userloginbar
Provides a simple block.

Namespace

Drupal\userloginbar\Plugin\Block

Code

public function build() {
  $config = \Drupal::config('user.settings');
  global $user;
  if (!$user
    ->id()) {
    $form = drupal_get_form(UserLoginForm::create($this->container), $this->request);
    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
      ->get('register')) {
      $items[] = l(t('Register'), 'user/register', array(
        'attributes' => array(
          'title' => t('Create a new user account.'),
        ),
      )) . ' |  ';
    }
    $items[] = l(t('Forgot Password?'), 'user/password', array(
      'attributes' => array(
        'title' => t('Request new password via e-mail.'),
      ),
    ));
    $form['actions']['links'] = array(
      '#markup' => theme('item_list', array(
        'items' => $items,
      )),
      '#weight' => 100,
    );
    $block['user_login_form'] = $form;
    $block['content'] = array(
      '#theme' => 'userloginbar',
      '#items' => $items,
    );
  }
  else {
    $block['content'] = array(
      '#theme' => 'userloginbar',
    );
  }
  return $block;
}