improvements-2.x-dev/modules/improvements_toolbar/improvements_toolbar.module

modules/improvements_toolbar/improvements_toolbar.module
<?php

/**
 * Implements hook_element_info_alter().
 */
function improvements_toolbar_element_info_alter(array &$elements): void {
  if (isset($elements['toolbar'])) {
    $elements['toolbar']['#attached']['library'][] = 'improvements_toolbar/toolbar';
  }
}

/**
 * Implements hook_toolbar_alter().
 */
function improvements_toolbar_toolbar_alter(array &$items): void {
  if (isset($items['administration']['#attached']['library'])) {
    $items['administration']['#attached']['library'] = array_diff($items['administration']['#attached']['library'], [
      'admin_toolbar/toolbar.tree',
      'admin_toolbar_tools/toolbar.icon',
    ]);
  }

  foreach (['home', 'user', 'contextual', 'devel', 'admin_toolbar_tools', 'administration_search'] as $item) {
    if (isset($items[$item])) {
      unset($items[$item]);
    }
  }
}

/**
 * Implements hook_theme_registry_alter().
 */
function improvements_toolbar_theme_registry_alter(array &$theme_registry): void {
  $theme_registry['html']['preprocess functions'] = array_diff($theme_registry['html']['preprocess functions'], ['toolbar_preprocess_html']);
}

/**
 * Preprocess function for html.html.twig.
 */
function improvements_toolbar_preprocess_html(array &$vars): void {
  if (\Drupal::currentUser()->hasPermission('access toolbar')) {
    $vars['attributes']['class'][] = 'page--with-toolbar';
  }
}

/**
 * Preprocess function for menu--toolbar.html.twig.
 */
function improvements_toolbar_preprocess_menu__toolbar(array &$vars): void {
  // Remove description from admin menu links
  improvements_unset_menu_items_description($vars['items']);
}

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc