From ab9d59a473464c0f7a2abd95be7860d8adf83879 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Fromme?= Date: Mon, 19 May 2025 15:57:48 +0200 Subject: [PATCH] feat: assign default dummy email to participants without address --- src/BusProNet/XmlParser/BookingParser.php | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/BusProNet/XmlParser/BookingParser.php b/src/BusProNet/XmlParser/BookingParser.php index 3b99988..55ff8a3 100644 --- a/src/BusProNet/XmlParser/BookingParser.php +++ b/src/BusProNet/XmlParser/BookingParser.php @@ -156,13 +156,15 @@ class BookingParser extends AbstractParser $contactNode = $node->filterXPath('//kommunikation'); if (0 < $contactNode->count()) { - $communication = new Communication(); - $communication->phone = $this->getStringOrNullValue($contactNode->filterXPath('//telefonprivat')); - $communication->mobile = $this->getStringOrNullValue($contactNode->filterXPath('//telefonmobil')); - $communication->email = $this->getStringOrNullValue($contactNode->filterXPath('//email')); - $communication->newsletter = $this->getBoolValue($contactNode->filterXPath('//newsletter')); + $personalData->communication->phone = $this->getStringOrNullValue($contactNode->filterXPath('//telefonprivat')); + $personalData->communication->mobile = $this->getStringOrNullValue($contactNode->filterXPath('//telefonmobil')); + $personalData->communication->email = $this->getStringOrNullValue($contactNode->filterXPath('//email')); + $personalData->communication->newsletter = $this->getBoolValue($contactNode->filterXPath('//newsletter')); + } - $personalData->communication = $communication; + // assign default dummy address to ensure valid communication data + if (empty($personalData->communication->email)) { + $personalData->communication->email = 'teilnehmer@ep-reisen.de'; } return $personalData;