Mercurial > hg > cmmr2012-drupal-site
diff vendor/chi-teck/drupal-code-generator/templates/d8/hook/toolbar.twig @ 0:c75dbcec494b
Initial commit from drush-created site
author | Chris Cannam |
---|---|
date | Thu, 05 Jul 2018 14:24:15 +0000 |
parents | |
children | a9cd425dd02b |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/vendor/chi-teck/drupal-code-generator/templates/d8/hook/toolbar.twig Thu Jul 05 14:24:15 2018 +0000 @@ -0,0 +1,107 @@ +/** + * Implements hook_toolbar(). + */ +function {{ machine_name }}_toolbar() { + $items = []; + + // Add a search field to the toolbar. The search field employs no toolbar + // module theming functions. + $items['global_search'] = [ + '#type' => 'toolbar_item', + 'tab' => [ + '#type' => 'search', + '#attributes' => [ + 'placeholder' => t('Search the site'), + 'class' => ['search-global'], + ], + ], + '#weight' => 200, + // Custom CSS, JS or a library can be associated with the toolbar item. + '#attached' => [ + 'library' => [ + 'search/global', + ], + ], + ]; + + // The 'Home' tab is a simple link, which is wrapped in markup associated + // with a visual tab styling. + $items['home'] = [ + '#type' => 'toolbar_item', + 'tab' => [ + '#type' => 'link', + '#title' => t('Home'), + '#url' => Url::fromRoute('<front>'), + '#options' => [ + 'attributes' => [ + 'title' => t('Home page'), + 'class' => ['toolbar-icon', 'toolbar-icon-home'], + ], + ], + ], + '#weight' => -20, + ]; + + // A tray may be associated with a tab. + // + // When the tab is activated, the tray will become visible, either in a + // horizontal or vertical orientation on the screen. + // + // The tray should contain a renderable array. An optional #heading property + // can be passed. This text is written to a heading tag in the tray as a + // landmark for accessibility. + $items['commerce'] = [ + '#type' => 'toolbar_item', + 'tab' => [ + '#type' => 'link', + '#title' => t('Shopping cart'), + '#url' => Url::fromRoute('cart'), + '#options' => [ + 'attributes' => [ + 'title' => t('Shopping cart'), + ], + ], + ], + 'tray' => [ + '#heading' => t('Shopping cart actions'), + 'shopping_cart' => [ + '#theme' => 'item_list', + '#items' => [ /* An item list renderable array */ ], + ], + ], + '#weight' => 150, + ]; + + // The tray can be used to render arbitrary content. + // + // A renderable array passed to the 'tray' property will be rendered outside + // the administration bar but within the containing toolbar element. + // + // If the default behavior and styling of a toolbar tray is not desired, one + // can render content to the toolbar element and apply custom theming and + // behaviors. + $items['user_messages'] = [ + // Include the toolbar_tab_wrapper to style the link like a toolbar tab. + // Exclude the theme wrapper if custom styling is desired. + '#type' => 'toolbar_item', + 'tab' => [ + '#type' => 'link', + '#theme' => 'user_message_toolbar_tab', + '#theme_wrappers' => [], + '#title' => t('Messages'), + '#url' => Url::fromRoute('user.message'), + '#options' => [ + 'attributes' => [ + 'title' => t('Messages'), + ], + ], + ], + 'tray' => [ + '#heading' => t('User messages'), + 'messages' => [/* renderable content */], + ], + '#weight' => 125, + ]; + + return $items; +}