diff --git a/src/Controller/TicketController.php b/src/Controller/TicketController.php index 6ee0bb3..a4cdaaa 100644 --- a/src/Controller/TicketController.php +++ b/src/Controller/TicketController.php @@ -14,8 +14,10 @@ use Symfony\Component\Serializer\SerializerInterface; final class TicketController extends AbstractController { - public function __construct(private TicketService $service) - { + public function __construct( + private TicketService $service, + private SerializerInterface $serializer, + ) { } #[Route('/ticket', name: 'app_ticket')] @@ -27,12 +29,12 @@ final class TicketController extends AbstractController } #[Route(path: '/ticket/submit', name: 'app_submit', methods: Request::METHOD_POST)] - public function submit(Request $request, SerializerInterface $serializer): Response + public function submit(Request $request): Response { Stripe::setApiKey($_ENV['STRIPE_SECRET_KEY']); /** @var TicketData[] $ticketData */ - $ticketData = $serializer->deserialize( + $ticketData = $this->serializer->deserialize( $request->getContent(), TicketData::class.'[]', 'json', @@ -50,9 +52,11 @@ final class TicketController extends AbstractController return $this->render('ticket/success.html.twig'); } - #[Route(path: '/test', name: 'test', methods: Request::METHOD_GET)] - public function test(): Response + #[Route(path: '/cancelled', name: 'app_cancelled', methods: Request::METHOD_GET)] + public function cancel(): Response { - return new Response('idk'); + noty()->error('Bezahlung abgebrochen'); + + return $this->redirectToRoute('app_ticket'); } } diff --git a/src/Service/TicketService.php b/src/Service/TicketService.php index 827e0f8..ad8f653 100644 --- a/src/Service/TicketService.php +++ b/src/Service/TicketService.php @@ -43,7 +43,7 @@ class TicketService 'line_items' => $lineItems, 'mode' => 'payment', 'success_url' => $this->generator->generate('app_success', [], 0), - 'cancel_url' => $this->generator->generate('test', [], 0), + 'cancel_url' => $this->generator->generate('app_cancelled', [], 0), ]); }