fix: prevent null reference errors

This commit is contained in:
Björn Fromme
2025-12-01 10:37:39 +01:00
parent a6b0051f1b
commit 1f3e79d57c
@@ -33,26 +33,33 @@ class BookingDataProcessor
...$participant->rentalInsurance,
];
foreach ($servicesToMap as $service) {
if (false === isset($this->additionalServices[$service->id])) {
$serviceToAdd = $travelData->additionalServices[$service->id];
if (false === isset($bookingData->additionalServices[$service->id])) {
$serviceToAdd = $travelData->additionalServices[$service->id] ?? null;
if (null !== $serviceToAdd) {
$bookingData->additionalServices[$service->id] = $serviceToAdd;
$bookingData->additionalServices[$service->id]->individualPrice[$participant->index] = $serviceToAdd->price;
}
}
$bookingData->additionalServices[$service->id]->mapping[] = $participant->index;
if (true === isset($bookingData->additionalServices[$service->id])) {
$bookingData->additionalServices[$service->id]->mapping[] = $participant->index;
}
}
foreach ([$participant->transportationServiceTo, $participant->transportationServiceFro] as $service) {
if (false === isset($this->transportationServices[$service->id])) {
$serviceToAdd = $travelData->transportationServices[$service->id];
if (null === $service) {
continue;
}
if (false === isset($bookingData->transportationServices[$service->id])) {
$serviceToAdd = $travelData->transportationServices[$service->id] ?? null;
if (null !== $serviceToAdd) {
$bookingData->transportationServices[$service->id] = $serviceToAdd;
$bookingData->transportationServices[$service->id]->individualPrice[$participant->index] = $serviceToAdd->price;
}
}
$bookingData->transportationServices[$service->id]->mapping[] = $participant->index;
if (true === isset($bookingData->transportationServices[$service->id])) {
$bookingData->transportationServices[$service->id]->mapping[] = $participant->index;
}
}
if ('BUS' === $participant->transportationServiceTo->subType && null !== $selectedPickup = $participant->pickup) {
if ('BUS' === $participant->transportationServiceTo?->subType && null !== $selectedPickup = $participant->pickup) {
if (false === isset($bookingData->pickupsTo[$selectedPickup->id])) {
$bookingData->pickupsTo[$selectedPickup->id] = $selectedPickup;
}