Пример #1
0
 /**
  * {@inheritdoc}
  */
 protected function alterRoutes(RouteCollection $collection)
 {
     $mappers = $this->mapperManager->getMappers($collection);
     foreach ($mappers as $mapper) {
         $collection->add($mapper->getOverviewRouteName(), $mapper->getOverviewRoute());
         $collection->add($mapper->getAddRouteName(), $mapper->getAddRoute());
         $collection->add($mapper->getEditRouteName(), $mapper->getEditRoute());
         $collection->add($mapper->getDeleteRouteName(), $mapper->getDeleteRoute());
     }
 }
 /**
  * {@inheritdoc}
  */
 public function getDerivativeDefinitions($base_plugin_definition)
 {
     $mappers = $this->mapperManager->getMappers();
     foreach ($mappers as $plugin_id => $mapper) {
         /** @var \Drupal\config_translation\ConfigMapperInterface $mapper */
         $route_name = $mapper->getOverviewRouteName();
         $base_route = $mapper->getBaseRouteName();
         if (!empty($base_route)) {
             $this->derivatives[$route_name] = $base_plugin_definition;
             $this->derivatives[$route_name]['config_translation_plugin_id'] = $plugin_id;
             $this->derivatives[$route_name]['class'] = '\\Drupal\\config_translation\\Plugin\\Menu\\LocalTask\\ConfigTranslationLocalTask';
             $this->derivatives[$route_name]['route_name'] = $route_name;
             $this->derivatives[$route_name]['base_route'] = $base_route;
         }
     }
     return parent::getDerivativeDefinitions($base_plugin_definition);
 }
 /**
  * {@inheritdoc}
  */
 public function getDerivativeDefinitions($base_plugin_definition)
 {
     // Create contextual links for all mappers.
     $mappers = $this->mapperManager->getMappers();
     foreach ($mappers as $plugin_id => $mapper) {
         // @todo Contextual groups do not map to entity types in a predictable
         //   way. See https://drupal.org/node/2134841 to make them predictable.
         $group_name = $mapper->getContextualLinkGroup();
         if (empty($group_name)) {
             continue;
         }
         /** @var \Drupal\config_translation\ConfigMapperInterface $mapper */
         $route_name = $mapper->getOverviewRouteName();
         $this->derivatives[$route_name] = $base_plugin_definition;
         $this->derivatives[$route_name]['config_translation_plugin_id'] = $plugin_id;
         $this->derivatives[$route_name]['class'] = '\\Drupal\\config_translation\\Plugin\\Menu\\ContextualLink\\ConfigTranslationContextualLink';
         $this->derivatives[$route_name]['route_name'] = $route_name;
         $this->derivatives[$route_name]['group'] = $group_name;
     }
     return parent::getDerivativeDefinitions($base_plugin_definition);
 }