protected function JsonapiResourceConfigHtmlRouteProvider::getAddFormRoute in JSON:API Extras 8
Gets the add-form route.
Parameters
\Drupal\Core\Entity\EntityTypeInterface $entity_type: The entity type.
Return value
\Symfony\Component\Routing\Route|null The generated route, if available.
Overrides AdminHtmlRouteProvider::getAddFormRoute
1 call to JsonapiResourceConfigHtmlRouteProvider::getAddFormRoute()
- JsonapiResourceConfigHtmlRouteProvider::getRoutes in src/
JsonapiResourceConfigHtmlRouteProvider.php - Provides routes for entities.
File
- src/
JsonapiResourceConfigHtmlRouteProvider.php, line 72
Class
- JsonapiResourceConfigHtmlRouteProvider
- Provides routes for JSON API Resource Config entities.
Namespace
Drupal\jsonapi_extrasCode
protected function getAddFormRoute(EntityTypeInterface $entity_type) {
if ($entity_type
->hasLinkTemplate('add-form')) {
$entity_type_id = $entity_type
->id();
$route = new Route($entity_type
->getLinkTemplate('add-form'));
// Use the add form handler, if available, otherwise default.
$operation = 'default';
if ($entity_type
->getFormClass('add')) {
$operation = 'add';
}
$route
->setDefaults([
'_entity_form' => "{$entity_type_id}.{$operation}",
'_title' => "Add {$entity_type->getLabel()}",
])
->setRequirement('_entity_create_access', $entity_type_id)
->setOption('parameters', [
$entity_type_id => [
'type' => 'entity:' . $entity_type_id,
],
])
->setOption('_admin_route', TRUE);
return $route;
}
}