From a2fce6488b2709d62fe1cb2521aa3d908d770fc5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Fromme?= Date: Mon, 15 Jul 2024 14:21:37 +0200 Subject: [PATCH] fix: preserve return url in submenus --- src/Menu/AbstractMenuBuilder.php | 7 ++++++- src/Menu/AdminMenuBuilder.php | 4 +++- src/Menu/ManagerMenuBuilder.php | 4 +++- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/src/Menu/AbstractMenuBuilder.php b/src/Menu/AbstractMenuBuilder.php index d119512..56df597 100644 --- a/src/Menu/AbstractMenuBuilder.php +++ b/src/Menu/AbstractMenuBuilder.php @@ -28,7 +28,12 @@ abstract class AbstractMenuBuilder protected function getDefaultRouteParameters(string $parameter = 'id', string $default = '0'): array { - return [$parameter => $this->requestStack->getMainRequest()->get($parameter, $default)]; + $request = $this->requestStack->getMainRequest(); + + return [ + $parameter => $request->get($parameter, $default), + 'r' => $request->get('r'), + ]; } protected function addAdminItem(ItemInterface $menu): void diff --git a/src/Menu/AdminMenuBuilder.php b/src/Menu/AdminMenuBuilder.php index a9580b5..839e7c6 100644 --- a/src/Menu/AdminMenuBuilder.php +++ b/src/Menu/AdminMenuBuilder.php @@ -259,8 +259,10 @@ class AdminMenuBuilder extends AbstractMenuBuilder $this->addDivider($menu); + $request = $this->requestStack->getMainRequest(); + $menu->addChild('zurück zur Übersicht', [ - 'uri' => $options['return_url'], + 'uri' => $request->get('r'), 'extras' => [ 'icon' => 'arrow-left', ], diff --git a/src/Menu/ManagerMenuBuilder.php b/src/Menu/ManagerMenuBuilder.php index 1ffb0b9..dfbe0f0 100644 --- a/src/Menu/ManagerMenuBuilder.php +++ b/src/Menu/ManagerMenuBuilder.php @@ -146,8 +146,10 @@ class ManagerMenuBuilder extends AbstractMenuBuilder $this->addDivider($menu); + $request = $this->requestStack->getMainRequest(); + $menu->addChild('zurück zur Übersicht', [ - 'uri' => $options['return_url'], + 'uri' => $request->get('r'), 'extras' => [ 'icon' => 'arrow-left', ],