From 0239aee89aba65547c23c9a2ac240be81ad7ab1c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Fromme?= Date: Tue, 9 Dec 2025 10:25:11 +0100 Subject: [PATCH] fix: avoid stale caches --- src/Service/BookingEditDataLoaderService.php | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/Service/BookingEditDataLoaderService.php b/src/Service/BookingEditDataLoaderService.php index de4e465..55c397b 100644 --- a/src/Service/BookingEditDataLoaderService.php +++ b/src/Service/BookingEditDataLoaderService.php @@ -34,11 +34,20 @@ class BookingEditDataLoaderService /** * Loads booking data from session or initializes from API on first load. + * + * Validates that any cached session data matches the requested booking ID. + * If a different booking is in session, it is cleared and fresh data is loaded. */ public function loadFormData(Request $request, int $bookingId, string $email, string $password): ?BookingDto { $formData = $this->bookingService->getBookingDto($request, BookingDto::MODE_EDIT); + // Validate session data matches requested booking - clear stale data if mismatched + if (null !== $formData && $formData->booking?->id !== $bookingId) { + $this->bookingService->clearBookingDto($request, BookingDto::MODE_EDIT); + $formData = null; + } + if (null === $formData) { return $this->initializeFromApi($request, $bookingId, $email, $password); }