You are here

protected function SimpleMegaMenuTypeHtmlRouteProvider::getCollectionRoute in Simple Mega Menu 2.0.x

Same name and namespace in other branches
  1. 8 src/SimpleMegaMenuTypeHtmlRouteProvider.php \Drupal\simple_megamenu\SimpleMegaMenuTypeHtmlRouteProvider::getCollectionRoute()

Gets the collection route.

Parameters

\Drupal\Core\Entity\EntityTypeInterface $entity_type: The entity type.

Return value

\Symfony\Component\Routing\Route|null The generated route, if available.

Overrides DefaultHtmlRouteProvider::getCollectionRoute

1 call to SimpleMegaMenuTypeHtmlRouteProvider::getCollectionRoute()
SimpleMegaMenuTypeHtmlRouteProvider::getRoutes in src/SimpleMegaMenuTypeHtmlRouteProvider.php
Provides routes for entities.

File

src/SimpleMegaMenuTypeHtmlRouteProvider.php, line 41

Class

SimpleMegaMenuTypeHtmlRouteProvider
Provides routes for Simple mega menu type entities.

Namespace

Drupal\simple_megamenu

Code

protected function getCollectionRoute(EntityTypeInterface $entity_type) {
  if ($entity_type
    ->hasLinkTemplate('collection') && $entity_type
    ->hasListBuilderClass()) {
    $entity_type_id = $entity_type
      ->id();
    $route = new Route($entity_type
      ->getLinkTemplate('collection'));
    $route
      ->setDefaults([
      '_entity_list' => $entity_type_id,
      // Make sure this is not a TranslatableMarkup object as the
      // TitleResolver translates this string again.
      '_title' => (string) $entity_type
        ->getLabel(),
    ])
      ->setRequirement('_permission', $entity_type
      ->getAdminPermission())
      ->setOption('_admin_route', TRUE);
    return $route;
  }
}