From ba0a86cbeae411c59bfc29110f6568e396d3aebf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Fromme?= Date: Sat, 4 Oct 2025 11:49:36 +0200 Subject: [PATCH] fix: ignore past travels in list view when patching data --- src/BusProNet/XmlLoader/TravelLoader.php | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/src/BusProNet/XmlLoader/TravelLoader.php b/src/BusProNet/XmlLoader/TravelLoader.php index 63972a9..b08b0b0 100644 --- a/src/BusProNet/XmlLoader/TravelLoader.php +++ b/src/BusProNet/XmlLoader/TravelLoader.php @@ -170,8 +170,8 @@ class TravelLoader extends AbstractLoader * * @return Travel The loaded travel object * - * @throws TravelNotFoundException When travel ID is not found - * @throws HotelNotInTravelException When hotel ID exists but not for this travel + * @throws TravelNotFoundException When travel ID is not found + * @throws HotelNotInTravelException When hotel ID exists but not for this travel */ public function loadById(int $dateId, ?int $hotelId = null, ?string $filename = null): Travel { @@ -208,8 +208,8 @@ class TravelLoader extends AbstractLoader * * @return Travel The loaded travel object * - * @throws TravelNotFoundException When travel ID is not found in XML - * @throws HotelNotInTravelException When hotel ID is not found in travel XML + * @throws TravelNotFoundException When travel ID is not found in XML + * @throws HotelNotInTravelException When hotel ID is not found in travel XML */ private function loadXml(int $dateId, ?int $hotelId, string $filename): Travel { @@ -311,8 +311,13 @@ class TravelLoader extends AbstractLoader continue; } - $travelData = $this->loadById($travelId); - $booking->travelData = $travelData; + try { + $travelData = $this->loadById($travelId); + $booking->travelData = $travelData; + } catch (TravelNotFoundException) { + // Travel data not available (likely past travel) - skip patching + continue; + } if (null === $travelData->dateFrom) { continue;