diff --git a/core/EventSuscriber/Site/NodeEventSubscriber.php b/core/EventSuscriber/Site/NodeEventSubscriber.php index ea01c32..3608862 100644 --- a/core/EventSuscriber/Site/NodeEventSubscriber.php +++ b/core/EventSuscriber/Site/NodeEventSubscriber.php @@ -78,7 +78,10 @@ class NodeEventSubscriber extends EntityManagerEventSubscriber $generatedUrl = '/'.implode('/', $path); } - $generatedUrl = rtrim($generatedUrl, '/'); + if ($generatedUrl !== '/') { + $generatedUrl = rtrim($generatedUrl, '/'); + } + $parameters = $node->getParameters(); foreach ($parameters as $key => $parameter) { @@ -95,6 +98,15 @@ class NodeEventSubscriber extends EntityManagerEventSubscriber $node->setParameters($parameters); + $attributes = $node->getAttributes(); + $realAttributes = []; + + foreach ($attributes as $key => $attribute) { + $realAttributes[$attribute['label']] = $attribute; + } + + $node->setAttributes($realAttributes); + $urlExists = $this->nodeRepository->urlExists($generatedUrl, $node); if ($urlExists) { diff --git a/core/Form/Site/NodeParameterType.php b/core/Form/Site/NodeParameterType.php index 6d9f487..acbcb23 100644 --- a/core/Form/Site/NodeParameterType.php +++ b/core/Form/Site/NodeParameterType.php @@ -44,6 +44,7 @@ class NodeParameterType extends AbstractType TextType::class, [ 'label' => 'Éxigence', + 'help' => 'Expression régulière', 'required' => false, 'attr' => [ ], diff --git a/core/Router/SiteRouteLoader.php b/core/Router/SiteRouteLoader.php index 1630276..e50c1a3 100644 --- a/core/Router/SiteRouteLoader.php +++ b/core/Router/SiteRouteLoader.php @@ -52,7 +52,10 @@ class SiteRouteLoader extends Loader foreach ($node->getParameters() as $parameter) { $name = $parameter['name']; - $requirements[$name] = $parameter['requirement']; + if (!empty($parameter['requirement'])) { + $requirements[$name] = $parameter['requirement']; + }; + $defaults[$name] = $parameter['defaultValue']; } diff --git a/templates/site/tree_admin/navigation.html.twig b/templates/site/tree_admin/navigation.html.twig index 637082c..053a521 100644 --- a/templates/site/tree_admin/navigation.html.twig +++ b/templates/site/tree_admin/navigation.html.twig @@ -112,13 +112,25 @@
{{ node.label }} - {% if node.url %} - - - {{ node.url }} + + {% if node.url %} + {% if node.parameters|length %} + + {{ node.url }} + + {% else %} + + {{ node.url }} + + {% endif %} + {% endif %} + + {% if node.controller %} + + - - {% endif %} + {% endif %} +