You are here

class SchedulerRouteSubscriber in Scheduler 2.x

Scheduler route subscriber to add custom access for user views.

Hierarchy

Expanded class hierarchy of SchedulerRouteSubscriber

1 string reference to 'SchedulerRouteSubscriber'
scheduler.services.yml in ./scheduler.services.yml
scheduler.services.yml
1 service uses SchedulerRouteSubscriber
scheduler.route_subscriber in ./scheduler.services.yml
Drupal\scheduler\Routing\SchedulerRouteSubscriber

File

src/Routing/SchedulerRouteSubscriber.php, line 11

Namespace

Drupal\scheduler\Routing
View source
class SchedulerRouteSubscriber extends RouteSubscriberBase {

  /**
   * {@inheritdoc}
   */
  protected function alterRoutes(RouteCollection $collection) {
    $user_page_routes = \Drupal::service('scheduler.manager')
      ->getUserPageViewRoutes();
    foreach ($user_page_routes as $user_route) {
      if ($route = $collection
        ->get($user_route)) {
        $requirements = $route
          ->getRequirements();
        $requirements['_custom_access'] = '\\Drupal\\scheduler\\Access\\SchedulerRouteAccess::access';
        $route
          ->setRequirements($requirements);
      }
    }
  }

}

Members

Namesort descending Modifiers Type Description Overrides
RouteSubscriberBase::getSubscribedEvents public static function 7
RouteSubscriberBase::onAlterRoutes public function Delegates the route altering to self::alterRoutes(). 1
SchedulerRouteSubscriber::alterRoutes protected function Alters existing routes for a specific collection. Overrides RouteSubscriberBase::alterRoutes