From a7b7fb4b3219d43c36963503c46d544c1e9e1090 Mon Sep 17 00:00:00 2001 From: Constantin Simonis Date: Sun, 23 Feb 2025 17:19:17 +0100 Subject: [PATCH] refactor --- src/Controller/SuccessController.php | 27 ++++++++++++++++++++++--- src/Controller/TicketController.php | 30 +--------------------------- 2 files changed, 25 insertions(+), 32 deletions(-) diff --git a/src/Controller/SuccessController.php b/src/Controller/SuccessController.php index ebb7804..dc4d8b6 100644 --- a/src/Controller/SuccessController.php +++ b/src/Controller/SuccessController.php @@ -10,11 +10,32 @@ use Symfony\Component\Routing\Attribute\Route; class SuccessController extends AbstractController { - #[Route(path: '/success', name: 'app_success_page', methods: Request::METHOD_GET)] - public function __invoke(TicketService $service, Request $request): Response + #[Route(path: '/success', name: 'app_order_success', methods: Request::METHOD_GET)] + public function success(Request $request, TicketService $service): Response { - $service->completePayment((string)$request->query->get('session_id')); + $sessionId = $request->query->get('session_id'); + + if (!$sessionId) { + noty()->error('Etwas ist schiefgelaufen'); + + return $this->redirectToRoute('app_ticket'); + } + + if (!$service->completePayment($sessionId)) { + noty()->error('Etwas ist schiefgelaufen'); + + return $this->redirectToRoute('app_ticket'); + } return $this->render('ticket/success.html.twig'); } + + #[Route(path: '/cancelled', name: 'app_cancelled', methods: Request::METHOD_GET)] + public function cancel(): Response + { + noty()->error('Bezahlung abgebrochen'); + + return $this->redirectToRoute('app_ticket'); + } + } \ No newline at end of file diff --git a/src/Controller/TicketController.php b/src/Controller/TicketController.php index 2d5cca8..e531cd5 100644 --- a/src/Controller/TicketController.php +++ b/src/Controller/TicketController.php @@ -34,35 +34,7 @@ final class TicketController extends AbstractController return $this->json(['id' => $this->service->handleTicketData($ticketData)->id]); } - #[Route(path: '/success', name: 'app_order_success', methods: Request::METHOD_GET)] - public function success(Request $request): Response - { - $sessionId = $request->query->get('session_id'); - - if (!$sessionId) { - noty()->error('Etwas ist schiefgelaufen'); - - return $this->redirectToRoute('app_ticket'); - } - - if (!$this->service->completePayment($sessionId)) { - noty()->error('Etwas ist schiefgelaufen'); - - return $this->redirectToRoute('app_ticket'); - } - - return $this->redirectToRoute('app_success_page'); - } - - #[Route(path: '/cancelled', name: 'app_cancelled', methods: Request::METHOD_GET)] - public function cancel(): Response - { - noty()->error('Bezahlung abgebrochen'); - - return $this->redirectToRoute('app_ticket'); - } - - #[Route('/calendar', name: 'app_calendar')] + #[Route(path: '/calendar', name: 'app_calendar')] public function calendar(Request $request): Response { $userAgent = $request->headers->get('User-Agent');