You are here

function multiple_registration_block_view_user_login_block_alter in Multiple Registration 8.2

Same name and namespace in other branches
  1. 8 multiple_registration.module \multiple_registration_block_view_user_login_block_alter()
  2. 3.x multiple_registration.module \multiple_registration_block_view_user_login_block_alter()

Implements hook_block_view_BASE_BLOCK_ID_alter().

File

./multiple_registration.module, line 330
Contains multiple_registration.module.

Code

function multiple_registration_block_view_user_login_block_alter(array &$build, BlockPluginInterface $block) {
  if (isset($build['content']['user_links'])) {
    if (\Drupal::config('user.settings')
      ->get('register') !== UserInterface::REGISTER_ADMINISTRATORS_ONLY) {
      $reg_pages = \Drupal::service('multiple_registration.service')
        ->getRegistrationPages();
      foreach ($reg_pages as $rid => $role) {
        $uri = 'base:' . $role['url'];
        $reg_url = Url::fromUri($uri);
        $reg_link = Link::fromTextAndUrl(t('Create new @role account', [
          '@role' => $role['role_name'],
        ]), $reg_url);
        $build['content']['user_links']['#items']['multiple_registration_' . $rid] = $reg_link;
      }
    }
  }
}