You are here

function social_group_social_user_account_header_items in Open Social 8.9

Same name and namespace in other branches
  1. 8.4 modules/social_features/social_group/social_group.module \social_group_social_user_account_header_items()
  2. 8.5 modules/social_features/social_group/social_group.module \social_group_social_user_account_header_items()
  3. 8.6 modules/social_features/social_group/social_group.module \social_group_social_user_account_header_items()
  4. 8.7 modules/social_features/social_group/social_group.module \social_group_social_user_account_header_items()
  5. 8.8 modules/social_features/social_group/social_group.module \social_group_social_user_account_header_items()
  6. 10.3.x modules/social_features/social_group/social_group.module \social_group_social_user_account_header_items()
  7. 10.0.x modules/social_features/social_group/social_group.module \social_group_social_user_account_header_items()
  8. 10.1.x modules/social_features/social_group/social_group.module \social_group_social_user_account_header_items()
  9. 10.2.x modules/social_features/social_group/social_group.module \social_group_social_user_account_header_items()

Implements hook_social_user_account_header_items().

Adds the My Groups button to the account header block if it's enabled by a site manager.

File

modules/social_features/social_group/social_group.module, line 1941
The Social group module.

Code

function social_group_social_user_account_header_items(array $context) {
  if (\Drupal::config('social_user.navigation.settings')
    ->get('display_my_groups_icon') !== 1) {
    return [];
  }

  // We can't create a "My Groups" link without user.
  if (empty($context['user'])) {
    return [];
  }
  return [
    'groups' => [
      '#type' => 'account_header_element',
      '#wrapper_attributes' => [
        'class' => [
          'desktop',
        ],
      ],
      '#title' => new TranslatableMarkup('My Groups'),
      '#url' => Url::fromRoute('view.groups.page_user_groups', [
        'user' => $context['user']
          ->id(),
      ]),
      '#icon' => 'group',
      '#label' => new TranslatableMarkup('My Groups'),
    ],
  ];
}