From 760b3673fc415d98f3a3a3c27f05b841178f7b25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Fromme?= Date: Mon, 23 Sep 2024 15:47:37 +0200 Subject: [PATCH] fix: retain pagination and sorting when navigating using submenu --- .../Admin/Teamer/Availability/DeleteController.php | 4 +++- .../Admin/Teamer/TrainingAttendance/CreateController.php | 7 ++++++- .../Admin/Teamer/TrainingAttendance/DeleteController.php | 9 +++++++-- templates/admin/teamer/skills.html.twig | 4 ++-- 4 files changed, 18 insertions(+), 6 deletions(-) diff --git a/src/Controller/Admin/Teamer/Availability/DeleteController.php b/src/Controller/Admin/Teamer/Availability/DeleteController.php index 57e6603..e92b682 100644 --- a/src/Controller/Admin/Teamer/Availability/DeleteController.php +++ b/src/Controller/Admin/Teamer/Availability/DeleteController.php @@ -51,7 +51,9 @@ class DeleteController extends AbstractController 'teamer_name' => (string) $teamer, ]); - $redirectUrl = $this->getReturnUrl($request, 'app_admin_teamer_profile', ['uuid' => $teamer->getUuid()]); + $redirectUrl = $this->getReturnUrl($request, 'app_admin_teamer_profile', [ + 'uuid' => $teamer->getUuid(), + ]); return new HxRedirectResponse($redirectUrl); } diff --git a/src/Controller/Admin/Teamer/TrainingAttendance/CreateController.php b/src/Controller/Admin/Teamer/TrainingAttendance/CreateController.php index ea2d6ce..d1711d8 100644 --- a/src/Controller/Admin/Teamer/TrainingAttendance/CreateController.php +++ b/src/Controller/Admin/Teamer/TrainingAttendance/CreateController.php @@ -2,6 +2,7 @@ namespace App\Controller\Admin\Teamer\TrainingAttendance; +use App\Controller\Traits\ReturnUrlTrait; use App\Entity\JobProfile; use App\Entity\Teamer; use App\Entity\Training; @@ -19,6 +20,8 @@ use Symfony\Component\Security\Http\Attribute\IsGranted; class CreateController extends AbstractController { + use ReturnUrlTrait; + public function __construct( private readonly EntityManagerInterface $entityManager, private readonly LoggerInterface $logger @@ -67,7 +70,9 @@ class CreateController extends AbstractController 'training_name' => $training->getName(), ]); - $redirectUrl = $this->generateUrl('app_admin_teamer_skills', ['uuid' => $teamer->getUuid()]); + $redirectUrl = $this->getReturnUrl($request, 'app_admin_teamer_skills', [ + 'uuid' => $teamer->getUuid(), + ]); return new HxRedirectResponse($redirectUrl); } diff --git a/src/Controller/Admin/Teamer/TrainingAttendance/DeleteController.php b/src/Controller/Admin/Teamer/TrainingAttendance/DeleteController.php index 97dd479..a1a10ec 100644 --- a/src/Controller/Admin/Teamer/TrainingAttendance/DeleteController.php +++ b/src/Controller/Admin/Teamer/TrainingAttendance/DeleteController.php @@ -2,6 +2,7 @@ namespace App\Controller\Admin\Teamer\TrainingAttendance; +use App\Controller\Traits\ReturnUrlTrait; use App\Entity\TrainingAttendance; use App\Htmx\HxRedirectResponse; use Doctrine\ORM\EntityManagerInterface; @@ -14,6 +15,8 @@ use Symfony\Component\Security\Http\Attribute\IsGranted; class DeleteController extends AbstractController { + use ReturnUrlTrait; + public function __construct( private readonly EntityManagerInterface $entityManager, private readonly LoggerInterface $logger @@ -39,9 +42,11 @@ class DeleteController extends AbstractController 'training_name' => $attendance->getTraining()->getName(), ]); - return new HxRedirectResponse($this->generateUrl('app_admin_teamer_skills', [ + $returnUrl = $this->getReturnUrl($request, 'app_admin_teamer_skills', [ 'uuid' => $teamer->getUuid(), - ])); + ]); + + return new HxRedirectResponse($returnUrl); } return $this->render('admin/teamer/training_attendance/modal_delete.html.twig', [ diff --git a/templates/admin/teamer/skills.html.twig b/templates/admin/teamer/skills.html.twig index 0875186..660e95c 100644 --- a/templates/admin/teamer/skills.html.twig +++ b/templates/admin/teamer/skills.html.twig @@ -27,7 +27,7 @@