id(); if ($settings_form_route = $this->getSettingsFormRoute($entity_type)) { $collection->add("$entity_type_id.settings", $settings_form_route); } return $collection; } /** * Gets the settings form route. * * @param \Drupal\Core\Entity\EntityTypeInterface $entity_type * The entity type. * * @return \Symfony\Component\Routing\Route|null * The generated route, if available. */ protected function getSettingsFormRoute(EntityTypeInterface $entity_type) { if (!$entity_type->getBundleEntityType()) { $route = new Route("/admin/structure/{$entity_type->id()}/settings"); $route ->setDefaults([ '_form' => 'Drupal\opencase_entities\Form\OCOrganisationRelationSettingsForm', '_title' => "{$entity_type->getLabel()} settings", ]) ->setRequirement('_permission', $entity_type->getAdminPermission()) ->setOption('_admin_route', TRUE); return $route; } } }