annotate vendor/chi-teck/drupal-code-generator/templates/d8/service/route-subscriber.twig @ 0:c75dbcec494b

Initial commit from drush-created site
author Chris Cannam
date Thu, 05 Jul 2018 14:24:15 +0000
parents
children
rev   line source
Chris@0 1 <?php
Chris@0 2
Chris@0 3 namespace Drupal\{{ machine_name }}\EventSubscriber;
Chris@0 4
Chris@0 5 use Drupal\Core\Routing\RouteSubscriberBase;
Chris@0 6 use Drupal\Core\Routing\RoutingEvents;
Chris@0 7 use Symfony\Component\Routing\RouteCollection;
Chris@0 8
Chris@0 9 /**
Chris@0 10 * {{ name }} route subscriber.
Chris@0 11 */
Chris@0 12 class {{ class }} extends RouteSubscriberBase {
Chris@0 13
Chris@0 14 /**
Chris@0 15 * {@inheritdoc}
Chris@0 16 */
Chris@0 17 protected function alterRoutes(RouteCollection $collection) {
Chris@0 18 foreach ($collection->all() as $route) {
Chris@0 19 // Hide taxonomy pages from unprivileged users.
Chris@0 20 if (strpos($route->getPath(), '/taxonomy/term') === 0) {
Chris@0 21 $route->setRequirement('_role', 'administrator');
Chris@0 22 }
Chris@0 23 }
Chris@0 24 }
Chris@0 25
Chris@0 26 /**
Chris@0 27 * {@inheritdoc}
Chris@0 28 */
Chris@0 29 public static function getSubscribedEvents() {
Chris@0 30 $events = parent::getSubscribedEvents();
Chris@0 31
Chris@0 32 // Use a lower priority than \Drupal\views\EventSubscriber\RouteSubscriber
Chris@0 33 // to ensure the requirement will be added to its routes.
Chris@0 34 $events[RoutingEvents::ALTER] = ['onAlterRoutes', -300];
Chris@0 35
Chris@0 36 return $events;
Chris@0 37 }
Chris@0 38
Chris@0 39 }