Dumped Contents
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Le Jadis Beach Resort & Wellness - Chambre : #108 - Luxury Lagoona Suite Vue mer partielle has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#4354
+rpId: 2160
+adultsPrice: 516
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 516
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 516
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 516
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 516
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Le Jadis Beach Resort & Wellness - Chambre : #118 - Imperial Beach Pool Jets Villa, 4 Suites - Piscine chauffée has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#4399
+rpId: 2270
+adultsPrice: 3287
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 3287
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 3287
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 3287
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 3287
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Le Jadis Beach Resort & Wellness - Chambre : #117 - Imperial Beach Pool Jets Villa, 3 Suites - Piscine chauffée has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#4420
+rpId: 2259
+adultsPrice: 2592
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 2592
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 2592
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 2592
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 2592
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Le Jadis Beach Resort & Wellness - Chambre : #116 - Imperial Beach Pool Jets Villa, 2 Suites - Piscine chauffée has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#4441
+rpId: 2248
+adultsPrice: 1852
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1852
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1852
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1852
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1852
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Le Jadis Beach Resort & Wellness - Chambre : #115 - Imperial Beach Pool Jets Villa, 1 Suite - Piscine chauffée has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#4462
+rpId: 2237
+adultsPrice: 1527
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1527
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1527
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1527
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1527
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Le Jadis Beach Resort & Wellness - Chambre : #114 - Luxury Bord de plage Jet Pool Suite - Piscine chauffée has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#4483
+rpId: 2226
+adultsPrice: 920
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 920
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 920
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 920
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 920
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Le Jadis Beach Resort & Wellness - Chambre : #113 - Luxury Front de mer Pool Suite - Piscine chauffée has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#4504
+rpId: 2215
+adultsPrice: 800
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 800
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 800
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 800
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 800
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Le Jadis Beach Resort & Wellness - Chambre : #112 - Luxury Pool Suite - Vue mer partielle et Piscine chauffée has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#4525
+rpId: 2204
+adultsPrice: 667
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 667
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 667
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 667
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 667
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Le Jadis Beach Resort & Wellness - Chambre : #111 - Luxury Pool Suite - Jardin et Piscine chauffée has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#4546
+rpId: 2193
+adultsPrice: 629
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 629
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 629
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 629
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 629
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Le Jadis Beach Resort & Wellness - Chambre : #110 - PMR Luxury Pool Suite - Jardin et Piscine chauffée has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#4567
+rpId: 2182
+adultsPrice: 593
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 593
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 593
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 593
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 593
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Le Jadis Beach Resort & Wellness - Chambre : #109 - Luxury Pool Suite - Piscine chauffée has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#4588
+rpId: 2171
+adultsPrice: 593
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 593
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 593
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 593
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 593
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Le Jadis Beach Resort & Wellness - Chambre : #107 - Luxury Lagoona Suite Jardin has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#4609
+rpId: 2151
+adultsPrice: 420
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
"Update Stay Rooms - Chambers Prices"
2 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
array:1 [
0 => array:12 [
0 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
"room_id" => 108
"room_picture" => "/uploads/rooms/108/666148f000ef4581925269.webp"
"room_name" => "Luxury Lagoona Suite Vue mer partielle"
"room_slug" => "luxury-lagoona-suite-vue-mer-partielle"
"room_description" => "Avec un balcon privé doté d'une piscine à débordement chauffée – option de piscine chauffée disponible – donnant sur les jardins luxuriants de notre complexe mauricien, les magnifiques piscines et le magnifique océan, vous n'aurez que l'embarras du choix de vues dans ce généreux 84 m² (904 pieds carrés) suite au dernier étage. Débordant de romantisme avec ses parquets en bois richement travaillés, ses murs en rotin tressé, son bel extérieur en pierre naturelle, son mobilier élégant aux couleurs douces et sa salle de bains luxueuse composée des meilleurs matériaux nobles, cette demeure avec vue sur la mer promet une escapade des plus idylliques."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2160
"adult_amount" => 2064
"children_amount" => 0
"basis_amount" => 2064
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 516
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 516
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 516
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 516
"kids_price" => 0
]
]
]
]
1 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 118
"room_picture" => "/uploads/rooms/118/673ce10f7ae87055585185.webp"
"room_name" => "Imperial Beach Pool Jets Villa, 4 Suites - Piscine chauffée"
"room_slug" => "imperial-beach-pool-jets-villa-4-suites-piscine-chauffee"
"room_description" => "Située sur un terrain isolé de 1 200 m² (12 917 pieds carrés) entouré de murs en pierre historiques magnifiquement fabriqués à la main, avec un accès direct à notre plage tranquille et offrant une vue directe sur les eaux azurées de la mer où que l'on se trouve, notre Imperial Beach Villa est l'un des hébergements côtiers les plus étonnamment luxueux de l'île Maurice. Dotée de somptueux espaces de vie intérieurs et extérieurs comprenant des piscines privées ainsi que de vastes espaces de restauration et de détente, la villa est idéale pour les couples, les amis et les familles intergénérationnelles."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2270
"adult_amount" => 13148
"children_amount" => 0
"basis_amount" => 13148
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 3287
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 3287
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 3287
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 3287
"kids_price" => 0
]
]
]
]
2 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 117
"room_picture" => "/uploads/rooms/117/673ce0ff5a8ae382701732.webp"
"room_name" => "Imperial Beach Pool Jets Villa, 3 Suites - Piscine chauffée"
"room_slug" => "imperial-beach-pool-jets-villa-3-suites-piscine-chauffee"
"room_description" => "Située sur un terrain isolé de 1 200 m² (12 917 pieds carrés) entouré de murs en pierre historiques magnifiquement fabriqués à la main, avec un accès direct à notre plage tranquille et offrant une vue directe sur les eaux azurées de la mer où que l'on se trouve, notre Imperial Beach Villa est l'un des hébergements côtiers les plus étonnamment luxueux de l'île Maurice. Dotée de somptueux espaces de vie intérieurs et extérieurs comprenant des piscines privées ainsi que de vastes espaces de restauration et de détente, la villa est idéale pour les couples, les amis et les familles intergénérationnelles."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2259
"adult_amount" => 10368
"children_amount" => 0
"basis_amount" => 10368
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 2592
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 2592
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 2592
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 2592
"kids_price" => 0
]
]
]
]
3 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 116
"room_picture" => "/uploads/rooms/116/673ce0f845f02292315023.webp"
"room_name" => "Imperial Beach Pool Jets Villa, 2 Suites - Piscine chauffée"
"room_slug" => "imperial-beach-pool-jets-villa-2-suites-piscine-chauffee"
"room_description" => "Située sur un terrain isolé de 1 200 m² (12 917 pieds carrés) entouré de murs en pierre historiques magnifiquement fabriqués à la main, avec un accès direct à notre plage tranquille et offrant une vue directe sur les eaux azurées de la mer où que l'on se trouve, notre Imperial Beach Villa est l'un des hébergements côtiers les plus étonnamment luxueux de l'île Maurice. Dotée de somptueux espaces de vie intérieurs et extérieurs comprenant des piscines privées ainsi que de vastes espaces de restauration et de détente, la villa est idéale pour les couples, les amis et les familles intergénérationnelles."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2248
"adult_amount" => 7408
"children_amount" => 0
"basis_amount" => 7408
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1852
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1852
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1852
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1852
"kids_price" => 0
]
]
]
]
4 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 115
"room_picture" => "/uploads/rooms/115/673ce0c21c372694992813.webp"
"room_name" => "Imperial Beach Pool Jets Villa, 1 Suite - Piscine chauffée"
"room_slug" => "imperial-beach-pool-jets-villa-1-suite-piscine-chauffee"
"room_description" => "Située sur un terrain isolé de 1 200 m² (12 917 pieds carrés) entouré de murs en pierre historiques magnifiquement fabriqués à la main, avec un accès direct à notre plage tranquille et offrant une vue directe sur les eaux azurées de la mer où que l'on se trouve, notre Imperial Beach Villa est l'un des hébergements côtiers les plus étonnamment luxueux de l'île Maurice. Dotée de somptueux espaces de vie intérieurs et extérieurs comprenant des piscines privées ainsi que de vastes espaces de restauration et de détente, la villa est idéale pour les couples, les amis et les familles intergénérationnelles."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2237
"adult_amount" => 6108
"children_amount" => 0
"basis_amount" => 6108
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1527
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1527
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1527
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1527
"kids_price" => 0
]
]
]
]
5 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 114
"room_picture" => "/uploads/rooms/114/666aeb0f26ddf090438896.jfif"
"room_name" => "Luxury Bord de plage Jet Pool Suite - Piscine chauffée"
"room_slug" => "luxury-bord-de-plage-jet-pool-suite-piscine-chauffee"
"room_description" => "Luxe Front de Mer avec Piscine et Bain à Remous, d’une superficie de 180m², comprenant une chambre avec un lit King Size, une salle de bain (avec cabine de hammam) et une terrasse avec une piscine privée chauffée de 52m² et un bain à remous. Elles disposent aussi d'un réfrigérateur à vin individuel."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2226
"adult_amount" => 3680
"children_amount" => 0
"basis_amount" => 3680
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 920
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 920
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 920
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 920
"kids_price" => 0
]
]
]
]
6 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 113
"room_picture" => "/uploads/rooms/113/666aeaa05c406284435506.jpg"
"room_name" => "Luxury Front de mer Pool Suite - Piscine chauffée"
"room_slug" => "luxury-front-de-mer-pool-suite-piscine-chauffee"
"room_description" => "Luxe Front de Mer avec Piscine, d’une superficie de 125m², situées au 1er étage, comprenant une chambre avec un lit King Size, une salle de bain (avec cabine de hammam) et une terrasse avec une piscine privée de 25m² (chauffée à 28°C pendant l'hiver mauricien)."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2215
"adult_amount" => 3200
"children_amount" => 0
"basis_amount" => 3200
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 800
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 800
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 800
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 800
"kids_price" => 0
]
]
]
]
7 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 112
"room_picture" => "/uploads/rooms/112/6661597418edb472324989.webp"
"room_name" => "Luxury Pool Suite - Vue mer partielle et Piscine chauffée"
"room_slug" => "luxury-pool-suite-vue-mer-partielle-et-piscine-chauffee"
"room_description" => "Avec un balcon privé doté d'une piscine à débordement chauffée – option de piscine chauffée disponible – donnant sur les jardins luxuriants de notre complexe mauricien, les magnifiques piscines et le magnifique océan, vous n'aurez que l'embarras du choix de vues dans ce généreux 84 m² (904 pieds carrés) suite au dernier étage. Débordant de romantisme avec ses parquets en bois richement travaillés, ses murs en rotin tressé, son bel extérieur en pierre naturelle, son mobilier élégant aux couleurs douces et sa salle de bains luxueuse composée des meilleurs matériaux nobles, cette demeure avec vue sur la mer promet une escapade des plus idylliques."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2204
"adult_amount" => 2668
"children_amount" => 0
"basis_amount" => 2668
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 667
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 667
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 667
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 667
"kids_price" => 0
]
]
]
]
8 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 111
"room_picture" => "/uploads/rooms/111/66614aa5a47fc306792169.webp"
"room_name" => "Luxury Pool Suite - Jardin et Piscine chauffée"
"room_slug" => "luxury-pool-suite-jardin-et-piscine-chauffee"
"room_description" => "Située au rez-de-chaussée, cette suite généreuse de 84 m² (904 pieds carrés) respire le romantisme avec son parquet en bois richement travaillé, ses murs en rotin tressé et son bel extérieur en pierre naturelle. Son intérieur spacieux présente un mobilier élégant aux tons doux et une salle de bains luxueuse réalisée avec les meilleurs matériaux nobles. De grandes portes coulissantes en verre mènent à un balcon privé doté d'une piscine à débordement chauffée – option de piscine chauffée disponible – donnant sur un jardin privé. Des suites communicantes ainsi qu'une suite accessible spécialement conçue pour les personnes à mobilité réduite sont également disponibles."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2193
"adult_amount" => 2516
"children_amount" => 0
"basis_amount" => 2516
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 629
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 629
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 629
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 629
"kids_price" => 0
]
]
]
]
9 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 110
"room_picture" => "/uploads/rooms/110/673ce06fc2556612935712.jpg"
"room_name" => "PMR Luxury Pool Suite - Jardin et Piscine chauffée"
"room_slug" => "pmr-luxury-pool-suite-jardin-et-piscine-chauffee"
"room_description" => "Conçue avec soin pour accueillir les clients à mobilité réduite ou en situation de handicap, cette généreuse demeure de 95 m² (1025 pieds carrés) au rez-de-chaussée est située à proximité de l'ascenseur et des installations communes du complexe pour une accessibilité maximale. Elle est équipée d'une salle de bains privative classique ainsi que d'une deuxième salle de bains accessible aux fauteuils roulants, qui présente un vaste aménagement ouvert, des rampes murales et un banc bas intégré dans la zone de douche pour plus de soutien et de commodité. L'intérieur élégant de la suite comprend un mobilier élégant aux tons doux, un parquet richement travaillé et des murs en rotin tressé. De grandes portes coulissantes en verre mènent à un balcon privé doté d'une piscine à débordement chauffée donnant sur un jardin privé, pour votre confort ultime et votre bonheur de vacances."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2182
"adult_amount" => 2372
"children_amount" => 0
"basis_amount" => 2372
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 593
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 593
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 593
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 593
"kids_price" => 0
]
]
]
]
10 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 109
"room_picture" => "/uploads/rooms/109/666149b23b933303333716.webp"
"room_name" => "Luxury Pool Suite - Piscine chauffée"
"room_slug" => "luxury-pool-suite-piscine-chauffee"
"room_description" => "Située à l'étage supérieur, cette suite généreuse de 84 m² (904 pieds carrés) respire le romantisme avec son parquet en bois richement travaillé, ses murs en rotin tressé et son bel extérieur en pierre naturelle. Son intérieur spacieux présente un mobilier élégant aux tons doux et une salle de bains luxueuse réalisée avec les meilleurs matériaux nobles. De grandes portes coulissantes en verre mènent à un balcon privé avec une piscine à débordement chauffée (option de piscine chauffée disponible) et une vue magnifique sur la verdure et les piscines indigènes de notre complexe."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2171
"adult_amount" => 2372
"children_amount" => 0
"basis_amount" => 2372
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 593
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 593
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 593
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 593
"kids_price" => 0
]
]
]
]
11 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 107
"room_picture" => "/uploads/rooms/107/66614760c926c786421990.webp"
"room_name" => "Luxury Lagoona Suite Jardin"
"room_slug" => "luxury-lagoona-suite-jardin"
"room_description" => "Située au rez-de-chaussée, cette suite généreuse de 84 m² (904 pieds carrés) respire le romantisme avec son parquet en bois richement travaillé, ses murs en rotin tressé et son bel extérieur en pierre naturelle. Son intérieur spacieux présente un mobilier élégant aux tons doux et une salle de bains luxueuse réalisée avec les meilleurs matériaux nobles. De grandes portes coulissantes en verre mènent à un balcon privé doté d'une piscine à débordement chauffée – option de piscine chauffée disponible – donnant sur un jardin privé. Des suites communicantes ainsi qu'une suite accessible spécialement conçue pour les personnes à mobilité réduite sont également disponibles."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2151
"adult_amount" => 1680
"children_amount" => 0
"basis_amount" => 1680
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
]
]
]
]
]
1 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
"Update Stay Rooms results"
2 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
array:12 [
0 => App\DTO\RoomStayDTO {#2369
-marginRate: 20
-id: 108
-name: "Luxury Lagoona Suite Vue mer partielle"
-slug: "luxury-lagoona-suite-vue-mer-partielle"
-picture: "/uploads/rooms/108/666148f000ef4581925269.webp"
-description: "Avec un balcon privé doté d'une piscine à débordement chauffée – option de piscine chauffée disponible – donnant sur les jardins luxuriants de notre complexe mauricien, les magnifiques piscines et le magnifique océan, vous n'aurez que l'embarras du choix de vues dans ce généreux 84 m² (904 pieds carrés) suite au dernier étage. Débordant de romantisme avec ses parquets en bois richement travaillés, ses murs en rotin tressé, son bel extérieur en pierre naturelle, son mobilier élégant aux couleurs douces et sa salle de bains luxueuse composée des meilleurs matériaux nobles, cette demeure avec vue sur la mer promet une escapade des plus idylliques."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 203
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 516
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 516
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 516
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 516
"kids_price" => 0
]
]
"amount" => 2064
]
]
-totalRoomAmount: 2064.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#4641
-marginRate: 20
+extraId: 203
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2064.0
+totalStayAmountWoDiscount: 2064.0
+totalStayAmount: 2064.0
+finalAmountWoDiscount: 2476.8
+finalAmount: 2476.8
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#4644
-marginRate: 20
+extraId: 74
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 116
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 464
+kidsExtrasAmount: 0
+stayExtrasAmount: 464
+stayRoomAmount: 2064.0
+totalStayAmountWoDiscount: 2528.0
+totalStayAmount: 2528.0
+finalAmountWoDiscount: 3033.6
+finalAmount: 3033.6
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#4649
-marginRate: 20
+extraId: 75
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 184
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 736
+kidsExtrasAmount: 0
+stayExtrasAmount: 736
+stayRoomAmount: 2064.0
+totalStayAmountWoDiscount: 2800.0
+totalStayAmount: 2800.0
+finalAmountWoDiscount: 3360.0
+finalAmount: 3360.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#4650
-marginRate: 20
+extraId: 76
+name: "Premium All Inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 322
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1288
+kidsExtrasAmount: 0
+stayExtrasAmount: 1288
+stayRoomAmount: 2064.0
+totalStayAmountWoDiscount: 3352.0
+totalStayAmount: 3352.0
+finalAmountWoDiscount: 4022.4
+finalAmount: 4022.4
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
1 => App\DTO\RoomStayDTO {#4584
-marginRate: 20
-id: 118
-name: "Imperial Beach Pool Jets Villa, 4 Suites - Piscine chauffée"
-slug: "imperial-beach-pool-jets-villa-4-suites-piscine-chauffee"
-picture: "/uploads/rooms/118/673ce10f7ae87055585185.webp"
-description: "Située sur un terrain isolé de 1 200 m² (12 917 pieds carrés) entouré de murs en pierre historiques magnifiquement fabriqués à la main, avec un accès direct à notre plage tranquille et offrant une vue directe sur les eaux azurées de la mer où que l'on se trouve, notre Imperial Beach Villa est l'un des hébergements côtiers les plus étonnamment luxueux de l'île Maurice. Dotée de somptueux espaces de vie intérieurs et extérieurs comprenant des piscines privées ainsi que de vastes espaces de restauration et de détente, la villa est idéale pour les couples, les amis et les familles intergénérationnelles."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 203
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 3287
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 3287
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 3287
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 3287
"kids_price" => 0
]
]
"amount" => 13148
]
]
-totalRoomAmount: 13148.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#4651
-marginRate: 20
+extraId: 203
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 13148.0
+totalStayAmountWoDiscount: 13148.0
+totalStayAmount: 13148.0
+finalAmountWoDiscount: 15777.6
+finalAmount: 15777.6
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#4652
-marginRate: 20
+extraId: 74
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 116
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 464
+kidsExtrasAmount: 0
+stayExtrasAmount: 464
+stayRoomAmount: 13148.0
+totalStayAmountWoDiscount: 13612.0
+totalStayAmount: 13612.0
+finalAmountWoDiscount: 16334.4
+finalAmount: 16334.4
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#4653
-marginRate: 20
+extraId: 75
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 184
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 736
+kidsExtrasAmount: 0
+stayExtrasAmount: 736
+stayRoomAmount: 13148.0
+totalStayAmountWoDiscount: 13884.0
+totalStayAmount: 13884.0
+finalAmountWoDiscount: 16660.8
+finalAmount: 16660.8
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#4654
-marginRate: 20
+extraId: 76
+name: "Premium All Inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 322
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1288
+kidsExtrasAmount: 0
+stayExtrasAmount: 1288
+stayRoomAmount: 13148.0
+totalStayAmountWoDiscount: 14436.0
+totalStayAmount: 14436.0
+finalAmountWoDiscount: 17323.2
+finalAmount: 17323.2
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
2 => App\DTO\RoomStayDTO {#4605
-marginRate: 20
-id: 117
-name: "Imperial Beach Pool Jets Villa, 3 Suites - Piscine chauffée"
-slug: "imperial-beach-pool-jets-villa-3-suites-piscine-chauffee"
-picture: "/uploads/rooms/117/673ce0ff5a8ae382701732.webp"
-description: "Située sur un terrain isolé de 1 200 m² (12 917 pieds carrés) entouré de murs en pierre historiques magnifiquement fabriqués à la main, avec un accès direct à notre plage tranquille et offrant une vue directe sur les eaux azurées de la mer où que l'on se trouve, notre Imperial Beach Villa est l'un des hébergements côtiers les plus étonnamment luxueux de l'île Maurice. Dotée de somptueux espaces de vie intérieurs et extérieurs comprenant des piscines privées ainsi que de vastes espaces de restauration et de détente, la villa est idéale pour les couples, les amis et les familles intergénérationnelles."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 203
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 2592
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 2592
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 2592
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 2592
"kids_price" => 0
]
]
"amount" => 10368
]
]
-totalRoomAmount: 10368.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#4655
-marginRate: 20
+extraId: 203
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 10368.0
+totalStayAmountWoDiscount: 10368.0
+totalStayAmount: 10368.0
+finalAmountWoDiscount: 12441.6
+finalAmount: 12441.6
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#4656
-marginRate: 20
+extraId: 74
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 116
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 464
+kidsExtrasAmount: 0
+stayExtrasAmount: 464
+stayRoomAmount: 10368.0
+totalStayAmountWoDiscount: 10832.0
+totalStayAmount: 10832.0
+finalAmountWoDiscount: 12998.4
+finalAmount: 12998.4
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#4657
-marginRate: 20
+extraId: 75
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 184
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 736
+kidsExtrasAmount: 0
+stayExtrasAmount: 736
+stayRoomAmount: 10368.0
+totalStayAmountWoDiscount: 11104.0
+totalStayAmount: 11104.0
+finalAmountWoDiscount: 13324.8
+finalAmount: 13324.8
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#4658
-marginRate: 20
+extraId: 76
+name: "Premium All Inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 322
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1288
+kidsExtrasAmount: 0
+stayExtrasAmount: 1288
+stayRoomAmount: 10368.0
+totalStayAmountWoDiscount: 11656.0
+totalStayAmount: 11656.0
+finalAmountWoDiscount: 13987.2
+finalAmount: 13987.2
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
3 => App\DTO\RoomStayDTO {#4604
-marginRate: 20
-id: 116
-name: "Imperial Beach Pool Jets Villa, 2 Suites - Piscine chauffée"
-slug: "imperial-beach-pool-jets-villa-2-suites-piscine-chauffee"
-picture: "/uploads/rooms/116/673ce0f845f02292315023.webp"
-description: "Située sur un terrain isolé de 1 200 m² (12 917 pieds carrés) entouré de murs en pierre historiques magnifiquement fabriqués à la main, avec un accès direct à notre plage tranquille et offrant une vue directe sur les eaux azurées de la mer où que l'on se trouve, notre Imperial Beach Villa est l'un des hébergements côtiers les plus étonnamment luxueux de l'île Maurice. Dotée de somptueux espaces de vie intérieurs et extérieurs comprenant des piscines privées ainsi que de vastes espaces de restauration et de détente, la villa est idéale pour les couples, les amis et les familles intergénérationnelles."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 203
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1852
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1852
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1852
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1852
"kids_price" => 0
]
]
"amount" => 7408
]
]
-totalRoomAmount: 7408.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#4659
-marginRate: 20
+extraId: 203
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 7408.0
+totalStayAmountWoDiscount: 7408.0
+totalStayAmount: 7408.0
+finalAmountWoDiscount: 8889.6
+finalAmount: 8889.6
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#4660
-marginRate: 20
+extraId: 74
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 116
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 464
+kidsExtrasAmount: 0
+stayExtrasAmount: 464
+stayRoomAmount: 7408.0
+totalStayAmountWoDiscount: 7872.0
+totalStayAmount: 7872.0
+finalAmountWoDiscount: 9446.4
+finalAmount: 9446.4
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#4661
-marginRate: 20
+extraId: 75
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 184
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 736
+kidsExtrasAmount: 0
+stayExtrasAmount: 736
+stayRoomAmount: 7408.0
+totalStayAmountWoDiscount: 8144.0
+totalStayAmount: 8144.0
+finalAmountWoDiscount: 9772.8
+finalAmount: 9772.8
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#4662
-marginRate: 20
+extraId: 76
+name: "Premium All Inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 322
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1288
+kidsExtrasAmount: 0
+stayExtrasAmount: 1288
+stayRoomAmount: 7408.0
+totalStayAmountWoDiscount: 8696.0
+totalStayAmount: 8696.0
+finalAmountWoDiscount: 10435.2
+finalAmount: 10435.2
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
4 => App\DTO\RoomStayDTO {#4582
-marginRate: 20
-id: 115
-name: "Imperial Beach Pool Jets Villa, 1 Suite - Piscine chauffée"
-slug: "imperial-beach-pool-jets-villa-1-suite-piscine-chauffee"
-picture: "/uploads/rooms/115/673ce0c21c372694992813.webp"
-description: "Située sur un terrain isolé de 1 200 m² (12 917 pieds carrés) entouré de murs en pierre historiques magnifiquement fabriqués à la main, avec un accès direct à notre plage tranquille et offrant une vue directe sur les eaux azurées de la mer où que l'on se trouve, notre Imperial Beach Villa est l'un des hébergements côtiers les plus étonnamment luxueux de l'île Maurice. Dotée de somptueux espaces de vie intérieurs et extérieurs comprenant des piscines privées ainsi que de vastes espaces de restauration et de détente, la villa est idéale pour les couples, les amis et les familles intergénérationnelles."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 203
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1527
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1527
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1527
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1527
"kids_price" => 0
]
]
"amount" => 6108
]
]
-totalRoomAmount: 6108.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#4663
-marginRate: 20
+extraId: 203
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 6108.0
+totalStayAmountWoDiscount: 6108.0
+totalStayAmount: 6108.0
+finalAmountWoDiscount: 7329.6
+finalAmount: 7329.6
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#4664
-marginRate: 20
+extraId: 74
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 116
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 464
+kidsExtrasAmount: 0
+stayExtrasAmount: 464
+stayRoomAmount: 6108.0
+totalStayAmountWoDiscount: 6572.0
+totalStayAmount: 6572.0
+finalAmountWoDiscount: 7886.4
+finalAmount: 7886.4
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#4665
-marginRate: 20
+extraId: 75
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 184
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 736
+kidsExtrasAmount: 0
+stayExtrasAmount: 736
+stayRoomAmount: 6108.0
+totalStayAmountWoDiscount: 6844.0
+totalStayAmount: 6844.0
+finalAmountWoDiscount: 8212.8
+finalAmount: 8212.8
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#4666
-marginRate: 20
+extraId: 76
+name: "Premium All Inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 322
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1288
+kidsExtrasAmount: 0
+stayExtrasAmount: 1288
+stayRoomAmount: 6108.0
+totalStayAmountWoDiscount: 7396.0
+totalStayAmount: 7396.0
+finalAmountWoDiscount: 8875.2
+finalAmount: 8875.2
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
5 => App\DTO\RoomStayDTO {#4623
-marginRate: 20
-id: 114
-name: "Luxury Bord de plage Jet Pool Suite - Piscine chauffée"
-slug: "luxury-bord-de-plage-jet-pool-suite-piscine-chauffee"
-picture: "/uploads/rooms/114/666aeb0f26ddf090438896.jfif"
-description: "Luxe Front de Mer avec Piscine et Bain à Remous, d’une superficie de 180m², comprenant une chambre avec un lit King Size, une salle de bain (avec cabine de hammam) et une terrasse avec une piscine privée chauffée de 52m² et un bain à remous. Elles disposent aussi d'un réfrigérateur à vin individuel."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 203
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 920
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 920
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 920
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 920
"kids_price" => 0
]
]
"amount" => 3680
]
]
-totalRoomAmount: 3680.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#4667
-marginRate: 20
+extraId: 203
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 3680.0
+totalStayAmountWoDiscount: 3680.0
+totalStayAmount: 3680.0
+finalAmountWoDiscount: 4416.0
+finalAmount: 4416.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#4668
-marginRate: 20
+extraId: 74
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 116
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 464
+kidsExtrasAmount: 0
+stayExtrasAmount: 464
+stayRoomAmount: 3680.0
+totalStayAmountWoDiscount: 4144.0
+totalStayAmount: 4144.0
+finalAmountWoDiscount: 4972.8
+finalAmount: 4972.8
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#4669
-marginRate: 20
+extraId: 75
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 184
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 736
+kidsExtrasAmount: 0
+stayExtrasAmount: 736
+stayRoomAmount: 3680.0
+totalStayAmountWoDiscount: 4416.0
+totalStayAmount: 4416.0
+finalAmountWoDiscount: 5299.2
+finalAmount: 5299.2
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#4670
-marginRate: 20
+extraId: 76
+name: "Premium All Inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 322
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1288
+kidsExtrasAmount: 0
+stayExtrasAmount: 1288
+stayRoomAmount: 3680.0
+totalStayAmountWoDiscount: 4968.0
+totalStayAmount: 4968.0
+finalAmountWoDiscount: 5961.6
+finalAmount: 5961.6
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
6 => App\DTO\RoomStayDTO {#4598
-marginRate: 20
-id: 113
-name: "Luxury Front de mer Pool Suite - Piscine chauffée"
-slug: "luxury-front-de-mer-pool-suite-piscine-chauffee"
-picture: "/uploads/rooms/113/666aeaa05c406284435506.jpg"
-description: "Luxe Front de Mer avec Piscine, d’une superficie de 125m², situées au 1er étage, comprenant une chambre avec un lit King Size, une salle de bain (avec cabine de hammam) et une terrasse avec une piscine privée de 25m² (chauffée à 28°C pendant l'hiver mauricien)."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 203
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 800
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 800
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 800
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 800
"kids_price" => 0
]
]
"amount" => 3200
]
]
-totalRoomAmount: 3200.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#4671
-marginRate: 20
+extraId: 203
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 3200.0
+totalStayAmountWoDiscount: 3200.0
+totalStayAmount: 3200.0
+finalAmountWoDiscount: 3840.0
+finalAmount: 3840.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#4672
-marginRate: 20
+extraId: 74
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 116
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 464
+kidsExtrasAmount: 0
+stayExtrasAmount: 464
+stayRoomAmount: 3200.0
+totalStayAmountWoDiscount: 3664.0
+totalStayAmount: 3664.0
+finalAmountWoDiscount: 4396.8
+finalAmount: 4396.8
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#4673
-marginRate: 20
+extraId: 75
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 184
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 736
+kidsExtrasAmount: 0
+stayExtrasAmount: 736
+stayRoomAmount: 3200.0
+totalStayAmountWoDiscount: 3936.0
+totalStayAmount: 3936.0
+finalAmountWoDiscount: 4723.2
+finalAmount: 4723.2
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#4674
-marginRate: 20
+extraId: 76
+name: "Premium All Inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 322
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1288
+kidsExtrasAmount: 0
+stayExtrasAmount: 1288
+stayRoomAmount: 3200.0
+totalStayAmountWoDiscount: 4488.0
+totalStayAmount: 4488.0
+finalAmountWoDiscount: 5385.6
+finalAmount: 5385.6
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
7 => App\DTO\RoomStayDTO {#4621
-marginRate: 20
-id: 112
-name: "Luxury Pool Suite - Vue mer partielle et Piscine chauffée"
-slug: "luxury-pool-suite-vue-mer-partielle-et-piscine-chauffee"
-picture: "/uploads/rooms/112/6661597418edb472324989.webp"
-description: "Avec un balcon privé doté d'une piscine à débordement chauffée – option de piscine chauffée disponible – donnant sur les jardins luxuriants de notre complexe mauricien, les magnifiques piscines et le magnifique océan, vous n'aurez que l'embarras du choix de vues dans ce généreux 84 m² (904 pieds carrés) suite au dernier étage. Débordant de romantisme avec ses parquets en bois richement travaillés, ses murs en rotin tressé, son bel extérieur en pierre naturelle, son mobilier élégant aux couleurs douces et sa salle de bains luxueuse composée des meilleurs matériaux nobles, cette demeure avec vue sur la mer promet une escapade des plus idylliques."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 203
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 667
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 667
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 667
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 667
"kids_price" => 0
]
]
"amount" => 2668
]
]
-totalRoomAmount: 2668.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#4675
-marginRate: 20
+extraId: 203
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2668.0
+totalStayAmountWoDiscount: 2668.0
+totalStayAmount: 2668.0
+finalAmountWoDiscount: 3201.6
+finalAmount: 3201.6
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#4676
-marginRate: 20
+extraId: 74
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 116
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 464
+kidsExtrasAmount: 0
+stayExtrasAmount: 464
+stayRoomAmount: 2668.0
+totalStayAmountWoDiscount: 3132.0
+totalStayAmount: 3132.0
+finalAmountWoDiscount: 3758.4
+finalAmount: 3758.4
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#4677
-marginRate: 20
+extraId: 75
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 184
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 736
+kidsExtrasAmount: 0
+stayExtrasAmount: 736
+stayRoomAmount: 2668.0
+totalStayAmountWoDiscount: 3404.0
+totalStayAmount: 3404.0
+finalAmountWoDiscount: 4084.8
+finalAmount: 4084.8
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#4678
-marginRate: 20
+extraId: 76
+name: "Premium All Inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 322
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1288
+kidsExtrasAmount: 0
+stayExtrasAmount: 1288
+stayRoomAmount: 2668.0
+totalStayAmountWoDiscount: 3956.0
+totalStayAmount: 3956.0
+finalAmountWoDiscount: 4747.2
+finalAmount: 4747.2
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
8 => App\DTO\RoomStayDTO {#4624
-marginRate: 20
-id: 111
-name: "Luxury Pool Suite - Jardin et Piscine chauffée"
-slug: "luxury-pool-suite-jardin-et-piscine-chauffee"
-picture: "/uploads/rooms/111/66614aa5a47fc306792169.webp"
-description: "Située au rez-de-chaussée, cette suite généreuse de 84 m² (904 pieds carrés) respire le romantisme avec son parquet en bois richement travaillé, ses murs en rotin tressé et son bel extérieur en pierre naturelle. Son intérieur spacieux présente un mobilier élégant aux tons doux et une salle de bains luxueuse réalisée avec les meilleurs matériaux nobles. De grandes portes coulissantes en verre mènent à un balcon privé doté d'une piscine à débordement chauffée – option de piscine chauffée disponible – donnant sur un jardin privé. Des suites communicantes ainsi qu'une suite accessible spécialement conçue pour les personnes à mobilité réduite sont également disponibles."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 203
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 629
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 629
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 629
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 629
"kids_price" => 0
]
]
"amount" => 2516
]
]
-totalRoomAmount: 2516.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#4679
-marginRate: 20
+extraId: 203
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2516.0
+totalStayAmountWoDiscount: 2516.0
+totalStayAmount: 2516.0
+finalAmountWoDiscount: 3019.2
+finalAmount: 3019.2
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#4680
-marginRate: 20
+extraId: 74
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 116
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 464
+kidsExtrasAmount: 0
+stayExtrasAmount: 464
+stayRoomAmount: 2516.0
+totalStayAmountWoDiscount: 2980.0
+totalStayAmount: 2980.0
+finalAmountWoDiscount: 3576.0
+finalAmount: 3576.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#4681
-marginRate: 20
+extraId: 75
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 184
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 736
+kidsExtrasAmount: 0
+stayExtrasAmount: 736
+stayRoomAmount: 2516.0
+totalStayAmountWoDiscount: 3252.0
+totalStayAmount: 3252.0
+finalAmountWoDiscount: 3902.4
+finalAmount: 3902.4
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#4682
-marginRate: 20
+extraId: 76
+name: "Premium All Inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 322
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1288
+kidsExtrasAmount: 0
+stayExtrasAmount: 1288
+stayRoomAmount: 2516.0
+totalStayAmountWoDiscount: 3804.0
+totalStayAmount: 3804.0
+finalAmountWoDiscount: 4564.8
+finalAmount: 4564.8
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
9 => App\DTO\RoomStayDTO {#4625
-marginRate: 20
-id: 110
-name: "PMR Luxury Pool Suite - Jardin et Piscine chauffée"
-slug: "pmr-luxury-pool-suite-jardin-et-piscine-chauffee"
-picture: "/uploads/rooms/110/673ce06fc2556612935712.jpg"
-description: "Conçue avec soin pour accueillir les clients à mobilité réduite ou en situation de handicap, cette généreuse demeure de 95 m² (1025 pieds carrés) au rez-de-chaussée est située à proximité de l'ascenseur et des installations communes du complexe pour une accessibilité maximale. Elle est équipée d'une salle de bains privative classique ainsi que d'une deuxième salle de bains accessible aux fauteuils roulants, qui présente un vaste aménagement ouvert, des rampes murales et un banc bas intégré dans la zone de douche pour plus de soutien et de commodité. L'intérieur élégant de la suite comprend un mobilier élégant aux tons doux, un parquet richement travaillé et des murs en rotin tressé. De grandes portes coulissantes en verre mènent à un balcon privé doté d'une piscine à débordement chauffée donnant sur un jardin privé, pour votre confort ultime et votre bonheur de vacances."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 203
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 593
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 593
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 593
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 593
"kids_price" => 0
]
]
"amount" => 2372
]
]
-totalRoomAmount: 2372.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#4683
-marginRate: 20
+extraId: 203
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2372.0
+totalStayAmountWoDiscount: 2372.0
+totalStayAmount: 2372.0
+finalAmountWoDiscount: 2846.4
+finalAmount: 2846.4
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#4684
-marginRate: 20
+extraId: 74
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 116
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 464
+kidsExtrasAmount: 0
+stayExtrasAmount: 464
+stayRoomAmount: 2372.0
+totalStayAmountWoDiscount: 2836.0
+totalStayAmount: 2836.0
+finalAmountWoDiscount: 3403.2
+finalAmount: 3403.2
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#4685
-marginRate: 20
+extraId: 75
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 184
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 736
+kidsExtrasAmount: 0
+stayExtrasAmount: 736
+stayRoomAmount: 2372.0
+totalStayAmountWoDiscount: 3108.0
+totalStayAmount: 3108.0
+finalAmountWoDiscount: 3729.6
+finalAmount: 3729.6
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#4686
-marginRate: 20
+extraId: 76
+name: "Premium All Inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 322
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1288
+kidsExtrasAmount: 0
+stayExtrasAmount: 1288
+stayRoomAmount: 2372.0
+totalStayAmountWoDiscount: 3660.0
+totalStayAmount: 3660.0
+finalAmountWoDiscount: 4392.0
+finalAmount: 4392.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
10 => App\DTO\RoomStayDTO {#4626
-marginRate: 20
-id: 109
-name: "Luxury Pool Suite - Piscine chauffée"
-slug: "luxury-pool-suite-piscine-chauffee"
-picture: "/uploads/rooms/109/666149b23b933303333716.webp"
-description: "Située à l'étage supérieur, cette suite généreuse de 84 m² (904 pieds carrés) respire le romantisme avec son parquet en bois richement travaillé, ses murs en rotin tressé et son bel extérieur en pierre naturelle. Son intérieur spacieux présente un mobilier élégant aux tons doux et une salle de bains luxueuse réalisée avec les meilleurs matériaux nobles. De grandes portes coulissantes en verre mènent à un balcon privé avec une piscine à débordement chauffée (option de piscine chauffée disponible) et une vue magnifique sur la verdure et les piscines indigènes de notre complexe."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 203
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 593
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 593
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 593
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 593
"kids_price" => 0
]
]
"amount" => 2372
]
]
-totalRoomAmount: 2372.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#4687
-marginRate: 20
+extraId: 203
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2372.0
+totalStayAmountWoDiscount: 2372.0
+totalStayAmount: 2372.0
+finalAmountWoDiscount: 2846.4
+finalAmount: 2846.4
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#4688
-marginRate: 20
+extraId: 74
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 116
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 464
+kidsExtrasAmount: 0
+stayExtrasAmount: 464
+stayRoomAmount: 2372.0
+totalStayAmountWoDiscount: 2836.0
+totalStayAmount: 2836.0
+finalAmountWoDiscount: 3403.2
+finalAmount: 3403.2
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#4689
-marginRate: 20
+extraId: 75
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 184
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 736
+kidsExtrasAmount: 0
+stayExtrasAmount: 736
+stayRoomAmount: 2372.0
+totalStayAmountWoDiscount: 3108.0
+totalStayAmount: 3108.0
+finalAmountWoDiscount: 3729.6
+finalAmount: 3729.6
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#4690
-marginRate: 20
+extraId: 76
+name: "Premium All Inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 322
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1288
+kidsExtrasAmount: 0
+stayExtrasAmount: 1288
+stayRoomAmount: 2372.0
+totalStayAmountWoDiscount: 3660.0
+totalStayAmount: 3660.0
+finalAmountWoDiscount: 4392.0
+finalAmount: 4392.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
11 => App\DTO\RoomStayDTO {#4627
-marginRate: 20
-id: 107
-name: "Luxury Lagoona Suite Jardin"
-slug: "luxury-lagoona-suite-jardin"
-picture: "/uploads/rooms/107/66614760c926c786421990.webp"
-description: "Située au rez-de-chaussée, cette suite généreuse de 84 m² (904 pieds carrés) respire le romantisme avec son parquet en bois richement travaillé, ses murs en rotin tressé et son bel extérieur en pierre naturelle. Son intérieur spacieux présente un mobilier élégant aux tons doux et une salle de bains luxueuse réalisée avec les meilleurs matériaux nobles. De grandes portes coulissantes en verre mènent à un balcon privé doté d'une piscine à débordement chauffée – option de piscine chauffée disponible – donnant sur un jardin privé. Des suites communicantes ainsi qu'une suite accessible spécialement conçue pour les personnes à mobilité réduite sont également disponibles."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 203
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
]
"amount" => 1680
]
]
-totalRoomAmount: 1680.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#4691
-marginRate: 20
+extraId: 203
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1680.0
+totalStayAmountWoDiscount: 1680.0
+totalStayAmount: 1680.0
+finalAmountWoDiscount: 2016.0
+finalAmount: 2016.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#4692
-marginRate: 20
+extraId: 74
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 116
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 464
+kidsExtrasAmount: 0
+stayExtrasAmount: 464
+stayRoomAmount: 1680.0
+totalStayAmountWoDiscount: 2144.0
+totalStayAmount: 2144.0
+finalAmountWoDiscount: 2572.8
+finalAmount: 2572.8
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#4693
-marginRate: 20
+extraId: 75
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 184
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 736
+kidsExtrasAmount: 0
+stayExtrasAmount: 736
+stayRoomAmount: 1680.0
+totalStayAmountWoDiscount: 2416.0
+totalStayAmount: 2416.0
+finalAmountWoDiscount: 2899.2
+finalAmount: 2899.2
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#4694
-marginRate: 20
+extraId: 76
+name: "Premium All Inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 322
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1288
+kidsExtrasAmount: 0
+stayExtrasAmount: 1288
+stayRoomAmount: 1680.0
+totalStayAmountWoDiscount: 2968.0
+totalStayAmount: 2968.0
+finalAmountWoDiscount: 3561.6
+finalAmount: 3561.6
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
]
1 in
RoomStayCalculation.php
line 274:
{
$offers_eligibled = [];
if ($this->debug) {
dump('All available offers of the hotel', $offers);
}
foreach ($offers as $key => $offer) {
"All available offers of the hotel"
2 in
RoomStayCalculation.php
line 274:
{
$offers_eligibled = [];
if ($this->debug) {
dump('All available offers of the hotel', $offers);
}
foreach ($offers as $key => $offer) {
Doctrine\Common\Collections\ArrayCollection {#4889
-elements: array:2 [
0 => App\Entity\Offers {#4853
-id: 178
-title: "SUPER EARLY BOOKING"
-type: "EarlyBooking"
-hotel: App\Entity\Hotels {#1216
-id: 18
-name: "Le Jadis Beach Resort & Wellness"
-description: """
Niché à proximité du parc marin de Balaclava-Turtle Bay, le premier des deux parcs marins nationaux de l'île Maurice, dans la quiétude de Balaclava, Le Jadis est le refuge idéal pour ceux qui cherchent refuge contre la foule et le bruit. Il est situé à seulement vingt minutes du village touristique de Grand Baie et du domaine Mont Choisy Le Golf, ainsi qu'à 45 minutes de l'aéroport international Sir Seewoosagur Ramgoolam.\r\n
\r\n
La propriété de luxe primée, anciennement nommée Angsana Balaclava Mauritius, est gérée par Banyan Tree Hotels and Resorts. D'une intimité merveilleuse, d'une élégance intemporelle, d'un romantisme inspirant et reflétant une forte concentration sur un design réfléchi ainsi que sur des éléments écologiques, Le Jadis ouvre la voie à un style de vie de villégiature tout à fait unique à Maurice.
"""
-website: "https://www.lejadis.com/"
-stars: 5
-youtubeVideoId: "ZiVW-_KhYTE"
-phone: "+230 204 1888"
-email: "reservations@lejadis.com"
-active: true
-gmapUrl: "<iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3746.8133388819556!2d57.51093551217254!3d-20.10008828124913!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x217c53a7b547e727%3A0xf8d9b15b68b8b75c!2sLe%20Jadis%20Beach%20Resort%20%26%20Wellness%20Mauritius!5e0!3m2!1sfr!2sfr!4v1718969387249!5m2!1sfr!2sfr" width="100%" height="600" style="border:0;" allowfullscreen="" loading="lazy" referrerpolicy="no-referrer-when-downgrade"></iframe>"
-zone: "Nord-Ouest"
-createdAt: DateTimeImmutable @1714145854 {#1214
date: 2024-04-26 15:37:34.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1737541154 {#1215
date: 2025-01-22 10:19:14.0 UTC (+00:00)
}
-rooms: Doctrine\ORM\PersistentCollection {#1217
#collection: Doctrine\Common\Collections\ArrayCollection {#1218
-elements: array:12 [
0 => App\Entity\Rooms {#1505
-id: 108
-name: "Luxury Lagoona Suite Vue mer partielle"
-description: "Avec un balcon privé doté d'une piscine à débordement chauffée – option de piscine chauffée disponible – donnant sur les jardins luxuriants de notre complexe mauricien, les magnifiques piscines et le magnifique océan, vous n'aurez que l'embarras du choix de vues dans ce généreux 84 m² (904 pieds carrés) suite au dernier étage. Débordant de romantisme avec ses parquets en bois richement travaillés, ses murs en rotin tressé, son bel extérieur en pierre naturelle, son mobilier élégant aux couleurs douces et sa salle de bains luxueuse composée des meilleurs matériaux nobles, cette demeure avec vue sur la mer promet une escapade des plus idylliques."
-active: true
-hotel: App\Entity\Hotels {#1216}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#4349
-elements: array:1 [
0 => App\Entity\RoomPrices {#1465
-id: 2160
-title: "shoulder"
-room: App\Entity\Rooms {#1505}
-quantity: 6
-stayStartedAt: DateTimeImmutable @1740960000 {#1437
date: 2025-03-03 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743379200 {#1446
date: 2025-03-31 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1508
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1507
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "516.00"
-singleOccupancy: "516.00"
-tripleOccupancy: "115.00"
-active: true
-extraBaby: 0.0
-extraChild: 58.0
-extraTeen: 86.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1503
#collection: Doctrine\Common\Collections\ArrayCollection {#1502
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1505}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1498
#collection: Doctrine\Common\Collections\ArrayCollection {#1496
-elements: array:1 [
0 => App\Entity\RoomCapacities {#3049
-id: 3281
-room: App\Entity\Rooms {#1505}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:1 [ …1]
-owner: App\Entity\Rooms {#1505}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1513
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1732870565 {#1423
date: 2024-11-29 08:56:05.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666148f000ef4581925269.webp"
-gallery: App\Entity\Galleries {#1466
-id: 146
-hotel: null
-room: App\Entity\Rooms {#1505}
-images: Doctrine\ORM\PersistentCollection {#1461
#collection: Doctrine\Common\Collections\ArrayCollection {#1468
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1466}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Jadis luxury lagoona suite vue mer"
}
-mediaDirSlug: "108"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "luxury-lagoona-suite-vue-mer-partielle"
}
1 => App\Entity\Rooms {#1459
-id: 118
-name: "Imperial Beach Pool Jets Villa, 4 Suites - Piscine chauffée"
-description: "Située sur un terrain isolé de 1 200 m² (12 917 pieds carrés) entouré de murs en pierre historiques magnifiquement fabriqués à la main, avec un accès direct à notre plage tranquille et offrant une vue directe sur les eaux azurées de la mer où que l'on se trouve, notre Imperial Beach Villa est l'un des hébergements côtiers les plus étonnamment luxueux de l'île Maurice. Dotée de somptueux espaces de vie intérieurs et extérieurs comprenant des piscines privées ainsi que de vastes espaces de restauration et de détente, la villa est idéale pour les couples, les amis et les familles intergénérationnelles."
-active: true
-hotel: App\Entity\Hotels {#1216}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#4376
-elements: array:1 [
0 => App\Entity\RoomPrices {#1456
-id: 2270
-title: "shoulder"
-room: App\Entity\Rooms {#1459}
-quantity: 6
-stayStartedAt: DateTimeImmutable @1740960000 {#1472
date: 2025-03-03 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743379200 {#1467
date: 2025-03-31 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1473
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1460
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "3287.00"
-singleOccupancy: "3287.00"
-tripleOccupancy: "115.00"
-active: true
-extraBaby: 0.0
-extraChild: 58.0
-extraTeen: 86.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1475
#collection: Doctrine\Common\Collections\ArrayCollection {#1476
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1459}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1452
#collection: Doctrine\Common\Collections\ArrayCollection {#1453
-elements: array:2 [
0 => App\Entity\RoomCapacities {#3165
-id: 3293
-room: App\Entity\Rooms {#1459}
-adults: 8
-teens: null
-children: 3
-babies: 4
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3159
-id: 3294
-room: App\Entity\Rooms {#1459}
-adults: 6
-teens: null
-children: 5
-babies: 4
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:2 [ …2]
-owner: App\Entity\Rooms {#1459}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1471
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1732057423 {#1470
date: 2024-11-19 23:03:43.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "673ce10f7ae87055585185.webp"
-gallery: App\Entity\Galleries {#1457
-id: 191
-hotel: null
-room: App\Entity\Rooms {#1459}
-images: Doctrine\ORM\PersistentCollection {#1458
#collection: Doctrine\Common\Collections\ArrayCollection {#1449
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1457}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "le jadis imperial pool 4s"
}
-mediaDirSlug: "118"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "imperial-beach-pool-jets-villa-4-suites-piscine-chauffee"
}
2 => App\Entity\Rooms {#1417
-id: 117
-name: "Imperial Beach Pool Jets Villa, 3 Suites - Piscine chauffée"
-description: "Située sur un terrain isolé de 1 200 m² (12 917 pieds carrés) entouré de murs en pierre historiques magnifiquement fabriqués à la main, avec un accès direct à notre plage tranquille et offrant une vue directe sur les eaux azurées de la mer où que l'on se trouve, notre Imperial Beach Villa est l'un des hébergements côtiers les plus étonnamment luxueux de l'île Maurice. Dotée de somptueux espaces de vie intérieurs et extérieurs comprenant des piscines privées ainsi que de vastes espaces de restauration et de détente, la villa est idéale pour les couples, les amis et les familles intergénérationnelles."
-active: true
-hotel: App\Entity\Hotels {#1216}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#4355
-elements: array:1 [
0 => App\Entity\RoomPrices {#1427
-id: 2259
-title: "shoulder"
-room: App\Entity\Rooms {#1417}
-quantity: 6
-stayStartedAt: DateTimeImmutable @1740960000 {#1412
date: 2025-03-03 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743379200 {#1413
date: 2025-03-31 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1414
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1415
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "2592.00"
-singleOccupancy: "2592.00"
-tripleOccupancy: "115.00"
-active: true
-extraBaby: 0.0
-extraChild: 58.0
-extraTeen: 86.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1419
#collection: Doctrine\Common\Collections\ArrayCollection {#1420
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1417}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1421
#collection: Doctrine\Common\Collections\ArrayCollection {#1422
-elements: array:2 [
0 => App\Entity\RoomCapacities {#3177
-id: 3291
-room: App\Entity\Rooms {#1417}
-adults: 6
-teens: null
-children: 2
-babies: 3
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3171
-id: 3292
-room: App\Entity\Rooms {#1417}
-adults: 4
-teens: null
-children: 4
-babies: 3
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:2 [ …2]
-owner: App\Entity\Rooms {#1417}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1463
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1732057407 {#1474
date: 2024-11-19 23:03:27.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "673ce0ff5a8ae382701732.webp"
-gallery: App\Entity\Galleries {#1428
-id: 212
-hotel: null
-room: App\Entity\Rooms {#1417}
-images: Doctrine\ORM\PersistentCollection {#1429
#collection: Doctrine\Common\Collections\ArrayCollection {#1431
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1428}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "le jadis imperial 3"
}
-mediaDirSlug: "117"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "imperial-beach-pool-jets-villa-3-suites-piscine-chauffee"
}
3 => App\Entity\Rooms {#1439
-id: 116
-name: "Imperial Beach Pool Jets Villa, 2 Suites - Piscine chauffée"
-description: "Située sur un terrain isolé de 1 200 m² (12 917 pieds carrés) entouré de murs en pierre historiques magnifiquement fabriqués à la main, avec un accès direct à notre plage tranquille et offrant une vue directe sur les eaux azurées de la mer où que l'on se trouve, notre Imperial Beach Villa est l'un des hébergements côtiers les plus étonnamment luxueux de l'île Maurice. Dotée de somptueux espaces de vie intérieurs et extérieurs comprenant des piscines privées ainsi que de vastes espaces de restauration et de détente, la villa est idéale pour les couples, les amis et les familles intergénérationnelles."
-active: true
-hotel: App\Entity\Hotels {#1216}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#4409
-elements: array:1 [
0 => App\Entity\RoomPrices {#1451
-id: 2248
-title: "shoulder"
-room: App\Entity\Rooms {#1439}
-quantity: 6
-stayStartedAt: DateTimeImmutable @1740960000 {#1434
date: 2025-03-03 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743379200 {#1435
date: 2025-03-31 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1436
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1438
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "1852.00"
-singleOccupancy: "1852.00"
-tripleOccupancy: "115.00"
-active: true
-extraBaby: 0.0
-extraChild: 58.0
-extraTeen: 86.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1440
#collection: Doctrine\Common\Collections\ArrayCollection {#1441
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1439}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1442
#collection: Doctrine\Common\Collections\ArrayCollection {#1444
-elements: array:2 [
0 => App\Entity\RoomCapacities {#3196
-id: 3289
-room: App\Entity\Rooms {#1439}
-adults: 4
-teens: null
-children: 1
-babies: 2
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3190
-id: 3290
-room: App\Entity\Rooms {#1439}
-adults: 2
-teens: null
-children: 3
-babies: 2
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:2 [ …2]
-owner: App\Entity\Rooms {#1439}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1432
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1732057400 {#1433
date: 2024-11-19 23:03:20.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "673ce0f845f02292315023.webp"
-gallery: App\Entity\Galleries {#1331
-id: 211
-hotel: null
-room: App\Entity\Rooms {#1439}
-images: Doctrine\ORM\PersistentCollection {#1320
#collection: Doctrine\Common\Collections\ArrayCollection {#1425
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1331}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "le jadis imperial 2"
}
-mediaDirSlug: "116"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "imperial-beach-pool-jets-villa-2-suites-piscine-chauffee"
}
4 => App\Entity\Rooms {#1539
-id: 115
-name: "Imperial Beach Pool Jets Villa, 1 Suite - Piscine chauffée"
-description: "Située sur un terrain isolé de 1 200 m² (12 917 pieds carrés) entouré de murs en pierre historiques magnifiquement fabriqués à la main, avec un accès direct à notre plage tranquille et offrant une vue directe sur les eaux azurées de la mer où que l'on se trouve, notre Imperial Beach Villa est l'un des hébergements côtiers les plus étonnamment luxueux de l'île Maurice. Dotée de somptueux espaces de vie intérieurs et extérieurs comprenant des piscines privées ainsi que de vastes espaces de restauration et de détente, la villa est idéale pour les couples, les amis et les familles intergénérationnelles."
-active: true
-hotel: App\Entity\Hotels {#1216}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#4430
-elements: array:1 [
0 => App\Entity\RoomPrices {#1568
-id: 2237
-title: "shoulder"
-room: App\Entity\Rooms {#1539}
-quantity: 6
-stayStartedAt: DateTimeImmutable @1740960000 {#1608
date: 2025-03-03 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743379200 {#1602
date: 2025-03-31 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1593
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1588
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "1527.00"
-singleOccupancy: "1527.00"
-tripleOccupancy: "115.00"
-active: true
-extraBaby: 0.0
-extraChild: 58.0
-extraTeen: 86.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1533
#collection: Doctrine\Common\Collections\ArrayCollection {#1511
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1539}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1527
#collection: Doctrine\Common\Collections\ArrayCollection {#1528
-elements: array:1 [
0 => App\Entity\RoomCapacities {#3198
-id: 3288
-room: App\Entity\Rooms {#1539}
-adults: 2
-teens: null
-children: 1
-babies: 2
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:1 [ …1]
-owner: App\Entity\Rooms {#1539}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1616
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1732057346 {#1614
date: 2024-11-19 23:02:26.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "673ce0c21c372694992813.webp"
-gallery: App\Entity\Galleries {#1569
-id: 210
-hotel: null
-room: App\Entity\Rooms {#1539}
-images: Doctrine\ORM\PersistentCollection {#1570
#collection: Doctrine\Common\Collections\ArrayCollection {#1573
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1569}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "le jadis imperial 1"
}
-mediaDirSlug: "115"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "imperial-beach-pool-jets-villa-1-suite-piscine-chauffee"
}
5 => App\Entity\Rooms {#1518
-id: 114
-name: "Luxury Bord de plage Jet Pool Suite - Piscine chauffée"
-description: "Luxe Front de Mer avec Piscine et Bain à Remous, d’une superficie de 180m², comprenant une chambre avec un lit King Size, une salle de bain (avec cabine de hammam) et une terrasse avec une piscine privée chauffée de 52m² et un bain à remous. Elles disposent aussi d'un réfrigérateur à vin individuel."
-active: true
-hotel: App\Entity\Hotels {#1216}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#4451
-elements: array:1 [
0 => App\Entity\RoomPrices {#1599
-id: 2226
-title: "shoulder"
-room: App\Entity\Rooms {#1518}
-quantity: 6
-stayStartedAt: DateTimeImmutable @1740960000 {#1522
date: 2025-03-03 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743379200 {#1521
date: 2025-03-31 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1520
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1519
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "920.00"
-singleOccupancy: "920.00"
-tripleOccupancy: "115.00"
-active: true
-extraBaby: 0.0
-extraChild: 58.0
-extraTeen: 86.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1517
#collection: Doctrine\Common\Collections\ArrayCollection {#1618
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1518}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1617
#collection: Doctrine\Common\Collections\ArrayCollection {#1615
-elements: array:1 [
0 => App\Entity\RoomCapacities {#2974
-id: 3287
-room: App\Entity\Rooms {#1518}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:1 [ …1]
-owner: App\Entity\Rooms {#1518}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1572
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1732870827 {#1571
date: 2024-11-29 09:00:27.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666aeb0f26ddf090438896.jfif"
-gallery: App\Entity\Galleries {#1612
-id: 152
-hotel: null
-room: App\Entity\Rooms {#1518}
-images: Doctrine\ORM\PersistentCollection {#1606
#collection: Doctrine\Common\Collections\ArrayCollection {#1611
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1612}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Jadis luxury bord de place"
}
-mediaDirSlug: "114"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "luxury-bord-de-plage-jet-pool-suite-piscine-chauffee"
}
6 => App\Entity\Rooms {#1604
-id: 113
-name: "Luxury Front de mer Pool Suite - Piscine chauffée"
-description: "Luxe Front de Mer avec Piscine, d’une superficie de 125m², situées au 1er étage, comprenant une chambre avec un lit King Size, une salle de bain (avec cabine de hammam) et une terrasse avec une piscine privée de 25m² (chauffée à 28°C pendant l'hiver mauricien)."
-active: true
-hotel: App\Entity\Hotels {#1216}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#4472
-elements: array:1 [
0 => App\Entity\RoomPrices {#1595
-id: 2215
-title: "shoulder"
-room: App\Entity\Rooms {#1604}
-quantity: 6
-stayStartedAt: DateTimeImmutable @1740960000 {#1607
date: 2025-03-03 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743379200 {#1600
date: 2025-03-31 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1605
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1603
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "800.00"
-singleOccupancy: "800.00"
-tripleOccupancy: "115.00"
-active: true
-extraBaby: 0.0
-extraChild: 58.0
-extraTeen: 86.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1601
#collection: Doctrine\Common\Collections\ArrayCollection {#1591
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1604}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1598
#collection: Doctrine\Common\Collections\ArrayCollection {#1596
-elements: array:1 [
0 => App\Entity\RoomCapacities {#1447
-id: 3286
-room: App\Entity\Rooms {#1604}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:1 [ …1]
-owner: App\Entity\Rooms {#1604}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1609
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1732870758 {#1610
date: 2024-11-29 08:59:18.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666aeaa05c406284435506.jpg"
-gallery: App\Entity\Galleries {#1592
-id: 151
-hotel: null
-room: App\Entity\Rooms {#1604}
-images: Doctrine\ORM\PersistentCollection {#1543
#collection: Doctrine\Common\Collections\ArrayCollection {#1590
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1592}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Jadis luxury front de mer"
}
-mediaDirSlug: "113"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "luxury-front-de-mer-pool-suite-piscine-chauffee"
}
7 => App\Entity\Rooms {#1541
-id: 112
-name: "Luxury Pool Suite - Vue mer partielle et Piscine chauffée"
-description: "Avec un balcon privé doté d'une piscine à débordement chauffée – option de piscine chauffée disponible – donnant sur les jardins luxuriants de notre complexe mauricien, les magnifiques piscines et le magnifique océan, vous n'aurez que l'embarras du choix de vues dans ce généreux 84 m² (904 pieds carrés) suite au dernier étage. Débordant de romantisme avec ses parquets en bois richement travaillés, ses murs en rotin tressé, son bel extérieur en pierre naturelle, son mobilier élégant aux couleurs douces et sa salle de bains luxueuse composée des meilleurs matériaux nobles, cette demeure avec vue sur la mer promet une escapade des plus idylliques."
-active: true
-hotel: App\Entity\Hotels {#1216}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#4493
-elements: array:1 [
0 => App\Entity\RoomPrices {#1633
-id: 2204
-title: "shoulder"
-room: App\Entity\Rooms {#1541}
-quantity: 6
-stayStartedAt: DateTimeImmutable @1740960000 {#1589
date: 2025-03-03 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743379200 {#1537
date: 2025-03-31 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1542
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1540
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "667.00"
-singleOccupancy: "667.00"
-tripleOccupancy: "115.00"
-active: true
-extraBaby: 0.0
-extraChild: 58.0
-extraTeen: 86.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1538
#collection: Doctrine\Common\Collections\ArrayCollection {#1531
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1541}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1536
#collection: Doctrine\Common\Collections\ArrayCollection {#1534
-elements: array:1 [
0 => App\Entity\RoomCapacities {#2902
-id: 3285
-room: App\Entity\Rooms {#1541}
-adults: 3
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:1 [ …1]
-owner: App\Entity\Rooms {#1541}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1587
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1732870713 {#1586
date: 2024-11-29 08:58:33.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "6661597418edb472324989.webp"
-gallery: App\Entity\Galleries {#1634
-id: 150
-hotel: null
-room: App\Entity\Rooms {#1541}
-images: Doctrine\ORM\PersistentCollection {#1635
#collection: Doctrine\Common\Collections\ArrayCollection {#1636
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1634}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Jadis luxury pool vue mer"
}
-mediaDirSlug: "112"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "luxury-pool-suite-vue-mer-partielle-et-piscine-chauffee"
}
8 => App\Entity\Rooms {#1643
-id: 111
-name: "Luxury Pool Suite - Jardin et Piscine chauffée"
-description: "Située au rez-de-chaussée, cette suite généreuse de 84 m² (904 pieds carrés) respire le romantisme avec son parquet en bois richement travaillé, ses murs en rotin tressé et son bel extérieur en pierre naturelle. Son intérieur spacieux présente un mobilier élégant aux tons doux et une salle de bains luxueuse réalisée avec les meilleurs matériaux nobles. De grandes portes coulissantes en verre mènent à un balcon privé doté d'une piscine à débordement chauffée – option de piscine chauffée disponible – donnant sur un jardin privé. Des suites communicantes ainsi qu'une suite accessible spécialement conçue pour les personnes à mobilité réduite sont également disponibles."
-active: true
-hotel: App\Entity\Hotels {#1216}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#4514
-elements: array:1 [
0 => App\Entity\RoomPrices {#1650
-id: 2193
-title: "shoulder"
-room: App\Entity\Rooms {#1643}
-quantity: 6
-stayStartedAt: DateTimeImmutable @1740960000 {#1639
date: 2025-03-03 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743379200 {#1640
date: 2025-03-31 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1641
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1642
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "629.00"
-singleOccupancy: "629.00"
-tripleOccupancy: "115.00"
-active: true
-extraBaby: 0.0
-extraChild: 58.0
-extraTeen: 86.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1644
#collection: Doctrine\Common\Collections\ArrayCollection {#1645
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1643}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1646
#collection: Doctrine\Common\Collections\ArrayCollection {#1647
-elements: array:1 [
0 => App\Entity\RoomCapacities {#2970
-id: 3284
-room: App\Entity\Rooms {#1643}
-adults: 3
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:1 [ …1]
-owner: App\Entity\Rooms {#1643}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1637
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1732870709 {#1638
date: 2024-11-29 08:58:29.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "66614aa5a47fc306792169.webp"
-gallery: App\Entity\Galleries {#1651
-id: 149
-hotel: null
-room: App\Entity\Rooms {#1643}
-images: Doctrine\ORM\PersistentCollection {#1652
#collection: Doctrine\Common\Collections\ArrayCollection {#1653
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1651}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Jadis luxury pool suite jardin et piscine chauffée"
}
-mediaDirSlug: "111"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "luxury-pool-suite-jardin-et-piscine-chauffee"
}
9 => App\Entity\Rooms {#1660
-id: 110
-name: "PMR Luxury Pool Suite - Jardin et Piscine chauffée"
-description: "Conçue avec soin pour accueillir les clients à mobilité réduite ou en situation de handicap, cette généreuse demeure de 95 m² (1025 pieds carrés) au rez-de-chaussée est située à proximité de l'ascenseur et des installations communes du complexe pour une accessibilité maximale. Elle est équipée d'une salle de bains privative classique ainsi que d'une deuxième salle de bains accessible aux fauteuils roulants, qui présente un vaste aménagement ouvert, des rampes murales et un banc bas intégré dans la zone de douche pour plus de soutien et de commodité. L'intérieur élégant de la suite comprend un mobilier élégant aux tons doux, un parquet richement travaillé et des murs en rotin tressé. De grandes portes coulissantes en verre mènent à un balcon privé doté d'une piscine à débordement chauffée donnant sur un jardin privé, pour votre confort ultime et votre bonheur de vacances."
-active: true
-hotel: App\Entity\Hotels {#1216}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#4535
-elements: array:1 [
0 => App\Entity\RoomPrices {#1667
-id: 2182
-title: "shoulder"
-room: App\Entity\Rooms {#1660}
-quantity: 6
-stayStartedAt: DateTimeImmutable @1740960000 {#1656
date: 2025-03-03 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743379200 {#1657
date: 2025-03-31 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1658
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1659
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "593.00"
-singleOccupancy: "593.00"
-tripleOccupancy: "115.00"
-active: true
-extraBaby: 0.0
-extraChild: 58.0
-extraTeen: 86.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1661
#collection: Doctrine\Common\Collections\ArrayCollection {#1662
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1660}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1663
#collection: Doctrine\Common\Collections\ArrayCollection {#1664
-elements: array:1 [
0 => App\Entity\RoomCapacities {#2804
-id: 3283
-room: App\Entity\Rooms {#1660}
-adults: 3
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:1 [ …1]
-owner: App\Entity\Rooms {#1660}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1654
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1732057263 {#1655
date: 2024-11-19 23:01:03.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "673ce06fc2556612935712.jpg"
-gallery: App\Entity\Galleries {#1668
-id: 213
-hotel: null
-room: App\Entity\Rooms {#1660}
-images: Doctrine\ORM\PersistentCollection {#1669
#collection: Doctrine\Common\Collections\ArrayCollection {#1670
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1668}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "le jadis pmr"
}
-mediaDirSlug: "110"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "pmr-luxury-pool-suite-jardin-et-piscine-chauffee"
}
10 => App\Entity\Rooms {#1677
-id: 109
-name: "Luxury Pool Suite - Piscine chauffée"
-description: "Située à l'étage supérieur, cette suite généreuse de 84 m² (904 pieds carrés) respire le romantisme avec son parquet en bois richement travaillé, ses murs en rotin tressé et son bel extérieur en pierre naturelle. Son intérieur spacieux présente un mobilier élégant aux tons doux et une salle de bains luxueuse réalisée avec les meilleurs matériaux nobles. De grandes portes coulissantes en verre mènent à un balcon privé avec une piscine à débordement chauffée (option de piscine chauffée disponible) et une vue magnifique sur la verdure et les piscines indigènes de notre complexe."
-active: true
-hotel: App\Entity\Hotels {#1216}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#4556
-elements: array:1 [
0 => App\Entity\RoomPrices {#1684
-id: 2171
-title: "shoulder"
-room: App\Entity\Rooms {#1677}
-quantity: 6
-stayStartedAt: DateTimeImmutable @1740960000 {#1673
date: 2025-03-03 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743379200 {#1674
date: 2025-03-31 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1675
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1676
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "593.00"
-singleOccupancy: "593.00"
-tripleOccupancy: "115.00"
-active: true
-extraBaby: 0.0
-extraChild: 58.0
-extraTeen: 86.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1678
#collection: Doctrine\Common\Collections\ArrayCollection {#1679
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1677}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1680
#collection: Doctrine\Common\Collections\ArrayCollection {#1681
-elements: array:1 [
0 => App\Entity\RoomCapacities {#3047
-id: 3282
-room: App\Entity\Rooms {#1677}
-adults: 3
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:1 [ …1]
-owner: App\Entity\Rooms {#1677}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1671
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1732870700 {#1672
date: 2024-11-29 08:58:20.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666149b23b933303333716.webp"
-gallery: App\Entity\Galleries {#1685
-id: 147
-hotel: null
-room: App\Entity\Rooms {#1677}
-images: Doctrine\ORM\PersistentCollection {#1686
#collection: Doctrine\Common\Collections\ArrayCollection {#1687
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1685}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Jadis luxury pool suite"
}
-mediaDirSlug: "109"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "luxury-pool-suite-piscine-chauffee"
}
11 => App\Entity\Rooms {#1694
-id: 107
-name: "Luxury Lagoona Suite Jardin"
-description: "Située au rez-de-chaussée, cette suite généreuse de 84 m² (904 pieds carrés) respire le romantisme avec son parquet en bois richement travaillé, ses murs en rotin tressé et son bel extérieur en pierre naturelle. Son intérieur spacieux présente un mobilier élégant aux tons doux et une salle de bains luxueuse réalisée avec les meilleurs matériaux nobles. De grandes portes coulissantes en verre mènent à un balcon privé doté d'une piscine à débordement chauffée – option de piscine chauffée disponible – donnant sur un jardin privé. Des suites communicantes ainsi qu'une suite accessible spécialement conçue pour les personnes à mobilité réduite sont également disponibles."
-active: true
-hotel: App\Entity\Hotels {#1216}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#4577
-elements: array:1 [
0 => App\Entity\RoomPrices {#1701
-id: 2151
-title: "shoulder"
-room: App\Entity\Rooms {#1694}
-quantity: 6
-stayStartedAt: DateTimeImmutable @1741003200 {#1690
date: 2025-03-03 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743422400 {#1691
date: 2025-03-31 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1692
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767225540 {#1693
date: 2025-12-31 23:59:00.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "420.00"
-singleOccupancy: "420.00"
-tripleOccupancy: "115.00"
-active: true
-extraBaby: 0.0
-extraChild: 58.0
-extraTeen: 58.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1695
#collection: Doctrine\Common\Collections\ArrayCollection {#1696
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1694}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1697
#collection: Doctrine\Common\Collections\ArrayCollection {#1698
-elements: array:1 [
0 => App\Entity\RoomCapacities {#3052
-id: 3280
-room: App\Entity\Rooms {#1694}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:1 [ …1]
-owner: App\Entity\Rooms {#1694}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1688
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1732870559 {#1689
date: 2024-11-29 08:55:59.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "66614760c926c786421990.webp"
-gallery: App\Entity\Galleries {#1702
-id: 145
-hotel: null
-room: App\Entity\Rooms {#1694}
-images: Doctrine\ORM\PersistentCollection {#1703
#collection: Doctrine\Common\Collections\ArrayCollection {#1704
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1702}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Jadis luxury lagoona suite jardin"
}
-mediaDirSlug: "107"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "luxury-lagoona-suite-jardin"
}
]
}
#initialized: true
-snapshot: array:12 [ …12]
-owner: App\Entity\Hotels {#1216}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#880 …}
-backRefFieldName: "hotel"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-address: "Baie Aux Tortues, Balaclava, Île Maurice"
-checkInTime: "14:00"
-checkOutTime: "12:00"
-babyAgeMax: "3"
-childAgeMax: "12"
-teenAgeMax: "18"
-extraCharges: Doctrine\ORM\PersistentCollection {#1219
#collection: Doctrine\Common\Collections\ArrayCollection {#1220
-elements: array:4 [
0 => App\Entity\ExtraCharges {#4635
-id: 74
-title: "Demi pension"
-description: null
-adultExtra: 58.0
-babyExtra: null
-childExtra: 29.0
-teenExtra: 58.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1216}
}
1 => App\Entity\ExtraCharges {#4643
-id: 75
-title: "Pension complète"
-description: null
-adultExtra: 92.0
-babyExtra: null
-childExtra: 46.0
-teenExtra: 92.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1216}
}
2 => App\Entity\ExtraCharges {#4645
-id: 76
-title: "Premium All Inclusive"
-description: null
-adultExtra: 161.0
-babyExtra: null
-childExtra: 81.0
-teenExtra: 161.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1216}
}
3 => App\Entity\ExtraCharges {#4646
-id: 203
-title: "BASE - PETIT DEJEUNER"
-description: null
-adultExtra: 0.0
-babyExtra: null
-childExtra: null
-teenExtra: null
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: true
-minNights: null
-hotel: App\Entity\Hotels {#1216}
}
]
}
#initialized: true
-snapshot: array:4 [ …4]
-owner: App\Entity\Hotels {#1216}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#876 …}
-backRefFieldName: "hotel"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-imageFile: null
-featuredImage: "666144e7e9b02729691640.jpg"
-gallery: App\Entity\Galleries {#1223
-id: 190
-hotel: App\Entity\Hotels {#1216}
-room: null
-images: Doctrine\ORM\PersistentCollection {#1224
#collection: Doctrine\Common\Collections\ArrayCollection {#1225
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1223}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "LE JADIS"
}
-mediaDirSlug: null
-offers: Doctrine\Common\Collections\ArrayCollection {#4889}
-highlighted: false
-services: array:1 [
0 => ""
]
-hlStartAt: null
-hlEndAt: null
-slug: "le-jadis-beach-resort-wellness"
}
-description: null
-stayStartAt: DateTimeImmutable @1730419200 {#4849
date: 2024-11-01 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1761868800 {#4850
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1730419200 {#4851
date: 2024-11-01 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1761868800 {#4852
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-reference: "SUPER EARLY BOOKING"
-minNights: null
-maxNights: null
-earlyBookingDays: 60
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#4854
#collection: Doctrine\Common\Collections\ArrayCollection {#4855
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#4853}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1075 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 30
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#4856
#collection: Doctrine\Common\Collections\ArrayCollection {#4857
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#4853}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1081 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-offers: Doctrine\ORM\PersistentCollection {#4858
#collection: Doctrine\Common\Collections\ArrayCollection {#4859
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#4853}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1085 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#4860
#collection: Doctrine\Common\Collections\ArrayCollection {#4861
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#4853}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1087 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#4862
#collection: Doctrine\Common\Collections\ArrayCollection {#4863
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#4853}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1093 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-extrasDiscount: null
-priority: 2
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
1 => App\Entity\Offers {#4868
-id: 179
-title: "EARLY BOOKING"
-type: "EarlyBooking"
-hotel: App\Entity\Hotels {#1216}
-description: null
-stayStartAt: DateTimeImmutable @1730419200 {#4864
date: 2024-11-01 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1761868800 {#4865
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1730419200 {#4866
date: 2024-11-01 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1761868800 {#4867
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-reference: "EARLY BOOKING"
-minNights: null
-maxNights: null
-earlyBookingDays: 45
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#4869
#collection: Doctrine\Common\Collections\ArrayCollection {#4870
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#4868}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1075 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 20
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#4871
#collection: Doctrine\Common\Collections\ArrayCollection {#4872
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#4868}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1081 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-offers: Doctrine\ORM\PersistentCollection {#4873
#collection: Doctrine\Common\Collections\ArrayCollection {#4874
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#4868}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1085 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#4875
#collection: Doctrine\Common\Collections\ArrayCollection {#4876
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#4868}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1087 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#4877
#collection: Doctrine\Common\Collections\ArrayCollection {#4878
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#4868}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1093 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-extrasDiscount: null
-priority: 2
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
]
}
1 in
PromotionDTO.php
line 546:
// if booking not respect the interval skip this offer - format('%a') return a string of the diff days, need to convert to integer value
if (intval($booking_interval->format('%a')) < $offer_earlybookingDays) {
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle() . '(nb jours: ' . $offer_earlybookingDays . ')', 'Early booking date interval failure. (début séjour dans '.$booking_interval->format('%a').' jours.)');
}
return $this;
}
"178 - SUPER EARLY BOOKING(nb jours: 60)"
2 in
PromotionDTO.php
line 546:
// if booking not respect the interval skip this offer - format('%a') return a string of the diff days, need to convert to integer value
if (intval($booking_interval->format('%a')) < $offer_earlybookingDays) {
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle() . '(nb jours: ' . $offer_earlybookingDays . ')', 'Early booking date interval failure. (début séjour dans '.$booking_interval->format('%a').' jours.)');
}
return $this;
}
"Early booking date interval failure. (début séjour dans 27 jours.)"
1 in
PromotionDTO.php
line 546:
// if booking not respect the interval skip this offer - format('%a') return a string of the diff days, need to convert to integer value
if (intval($booking_interval->format('%a')) < $offer_earlybookingDays) {
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle() . '(nb jours: ' . $offer_earlybookingDays . ')', 'Early booking date interval failure. (début séjour dans '.$booking_interval->format('%a').' jours.)');
}
return $this;
}
"179 - EARLY BOOKING(nb jours: 45)"
2 in
PromotionDTO.php
line 546:
// if booking not respect the interval skip this offer - format('%a') return a string of the diff days, need to convert to integer value
if (intval($booking_interval->format('%a')) < $offer_earlybookingDays) {
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle() . '(nb jours: ' . $offer_earlybookingDays . ')', 'Early booking date interval failure. (début séjour dans '.$booking_interval->format('%a').' jours.)');
}
return $this;
}
"Early booking date interval failure. (début séjour dans 27 jours.)"
1 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
"Step 1. Offres valides : "
2 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
null
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Shanti Maurice Resort & Spa - Chambre : #4 - Junior Suite Vue mer has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#5458
+rpId: 2425
+adultsPrice: 405
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 405
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 405
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 405
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 405
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Shanti Maurice Resort & Spa - Chambre : #12 - Shanti Villa has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#5479
+rpId: 2513
+adultsPrice: 4125
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 4125
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 4125
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 4125
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 4125
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Shanti Maurice Resort & Spa - Chambre : #11 - Villa Piscine Double Suite Bord de mer has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#5500
+rpId: 2502
+adultsPrice: 2805
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 2805
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 2805
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 2805
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 2805
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Shanti Maurice Resort & Spa - Chambre : #10 - Villa Piscine Double Suite Vue mer has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#5521
+rpId: 2491
+adultsPrice: 2415
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 2415
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 2415
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 2415
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 2415
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Shanti Maurice Resort & Spa - Chambre : #9 - Villa Piscine Bord de plage has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#5542
+rpId: 2480
+adultsPrice: 1255
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1255
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1255
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1255
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1255
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Shanti Maurice Resort & Spa - Chambre : #8 - Villa Piscine Vue mer has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#5563
+rpId: 2469
+adultsPrice: 945
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 945
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 945
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 945
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 945
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Shanti Maurice Resort & Spa - Chambre : #7 - Junior Suite Bord de plage has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#5584
+rpId: 2458
+adultsPrice: 520
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Shanti Maurice Resort & Spa - Chambre : #6 - Junior Suite Bord de mer has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#5605
+rpId: 2447
+adultsPrice: 455
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 455
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 455
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 455
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 455
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Shanti Maurice Resort & Spa - Chambre : #5 - Junior Suite Vue lagon has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#5626
+rpId: 2436
+adultsPrice: 425
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 425
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 425
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 425
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 425
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
"Update Stay Rooms - Chambers Prices"
2 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
array:1 [
0 => array:9 [
0 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
"room_id" => 4
"room_picture" => "/uploads/rooms/4/671741aee7577958764554.jpg"
"room_name" => "Junior Suite Vue mer"
"room_slug" => "junior-suite-vue-mer"
"room_description" => """
Chacune de nos suites junior avec vue sur l'océan est décorée dans des tons terreux neutres pour détendre le corps et apaiser l'esprit. De grandes portes coulissantes s'ouvrent sur la terrasse pour laisser la brise marine fraîche entrer dans la pièce et révéler une vue inégalée sur le magnifique océan Indien.\r\n
\r\n
Nos suites junior aux dimensions généreuses mesurent 65 à 72 mètres carrés et sont équipées d'un écran plat LCD avec une variété de chaînes internationales, d'un système de divertissement, d'une connexion Wi-Fi haut débit, d'un plateau/bouilloire, d'une machine à expresso et d'une grande salle de bains. , et un dressing séparé avec un placard ouvert et une coiffeuse.
"""
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2425
"adult_amount" => 1620
"children_amount" => 0
"basis_amount" => 1620
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 405
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 405
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 405
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 405
"kids_price" => 0
]
]
]
]
1 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 12
"room_picture" => "/uploads/rooms/12/671750740fe4c819042342.jpg"
"room_name" => "Shanti Villa"
"room_slug" => "shanti-villa"
"room_description" => """
Répartie sur 1 000 m², la Villa Shanti est faite sur mesure pour chaque séjour, pour un couple qui souhaite apprécier l'intimité intime, une escapade en famille ou de joyeuses retrouvailles dans son emplacement idyllique sur la péninsule avec intimité et vue imprenable sur la mer. La Villa comprend trois chambres : deux chambres principales avec lits king size et une troisième chambre avec lits jumeaux, chacune avec douche extérieure à effet pluie. Un espace salle à manger séparé est disponible ainsi qu'une cuisine adjacente, permettant aux clients de bénéficier des services du majordome dédié du complexe pendant leur séjour.\r\n
\r\n
À quelques pas de son salon spacieux, la piscine privée à température contrôlée (140 m²) est intégrée avec des lits Jaccuzi et une grande terrasse, des cours fermées et un balcon enveloppant avec des jardins privés paysagers exotiques.
"""
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2513
"adult_amount" => 16500
"children_amount" => 0
"basis_amount" => 16500
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 4125
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 4125
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 4125
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 4125
"kids_price" => 0
]
]
]
]
2 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 11
"room_picture" => "/uploads/rooms/11/67175114d504a921657988.jpg"
"room_name" => "Villa Piscine Double Suite Bord de mer"
"room_slug" => "villa-piscine-double-suite-bord-de-mer"
"room_description" => """
Notre vue sur l'océan | La Villa Double Suite avec Piscine en Bord de Mer offre une retraite familiale vraiment luxueuse et sophistiquée. Située à proximité de la plage et entourée de ses propres jardins exotiques privés, notre villa suite double offre un espace supplémentaire pour toute la famille.\r\n
\r\n
La villa comprend une piscine privée à température contrôlée, un pavillon de restauration séparé, un lit jacuzzi et se trouve à proximité de l'océan Indien et de notre plage. La villa familiale mesure 675 m² et comprend une chambre principale avec salle de bains privative et une chambre supplémentaire avec un lit king size, un écran plat LCD avec une variété de chaînes internationales, un système de divertissement, une connexion Wi-Fi haut débit, du café et du thé. équipements, machines à expresso, mini-bars, un coin salon confortable, un bureau en bois, une salle de bains spacieuse et un dressing. Vous pouvez également profiter de votre dressing, de votre baignoire surdimensionnée, de votre douche à effet pluie, de votre douche extérieure et de transats privés réservés avec kiosque.
"""
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2502
"adult_amount" => 11220
"children_amount" => 0
"basis_amount" => 11220
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 2805
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 2805
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 2805
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 2805
"kids_price" => 0
]
]
]
]
3 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 10
"room_picture" => "/uploads/rooms/10/6667e9794edd1307117004.jpg"
"room_name" => "Villa Piscine Double Suite Vue mer"
"room_slug" => "villa-piscine-double-suite-vue-mer"
"room_description" => """
Notre vue sur l'océan La Villa Double Suite avec Piscine offre une retraite familiale vraiment luxueuse et sophistiquée. Située à proximité de la plage et entourée de ses propres jardins exotiques privés, notre villa suite double offre un espace supplémentaire pour toute la famille.\r\n
\r\n
La villa comprend une piscine privée à température contrôlée, un pavillon de restauration séparé, un lit jacuzzi et se trouve à proximité de l'océan Indien et de notre plage. La villa familiale mesure 675 m² et comprend une chambre principale avec salle de bains privative et une chambre supplémentaire avec un lit king size, un écran plat LCD avec une variété de chaînes internationales, un système de divertissement, une connexion Wi-Fi haut débit, du café et du thé. équipements, machines à expresso, mini-bars, un coin salon confortable, un bureau en bois, une salle de bains spacieuse et un dressing. Vous pouvez également profiter de votre dressing, de votre baignoire surdimensionnée, de votre douche à effet pluie, de votre douche extérieure et de transats privés réservés avec kiosque.
"""
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2491
"adult_amount" => 9660
"children_amount" => 0
"basis_amount" => 9660
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 2415
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 2415
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 2415
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 2415
"kids_price" => 0
]
]
]
]
4 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 9
"room_picture" => "/uploads/rooms/9/671751a8b278b981187283.jpg"
"room_name" => "Villa Piscine Bord de plage"
"room_slug" => "villa-piscine-bord-de-plage"
"room_description" => """
Notre Beachfront Suite Pool Villa est l’évasion luxueuse ultime. Équipée de transats privés réservés avec kiosque sur la plage juste en face de la villa, une piscine privée à température contrôlée, un pavillon de salle à manger séparé et un lit jacuzzi sont disponibles pour votre confort.\r\n
\r\n
D'une superficie de 375 mètres carrés, notre luxueuse villa avec piscine en bord de mer est le cadre idéal pour votre escapade à l'île Maurice. La villa comprend un lit king size, un écran plat LCD avec une variété de chaînes internationales, un système de divertissement, une connexion Wi-Fi haut débit, un plateau/bouilloire, une machine à expresso, un minibar, un coin salon confortable, un bureau en bois et une salle de bain spacieuse et un dressing. Vous pouvez également profiter de votre dressing, de votre baignoire surdimensionnée, de votre douche à effet pluie et de votre douche extérieure.
"""
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2480
"adult_amount" => 5020
"children_amount" => 0
"basis_amount" => 5020
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1255
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1255
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1255
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1255
"kids_price" => 0
]
]
]
]
5 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 8
"room_picture" => "/uploads/rooms/8/671748ab7574d441062092.jpg"
"room_name" => "Villa Piscine Vue mer"
"room_slug" => "villa-piscine-vue-mer"
"room_description" => """
Notre villa avec piscine avec vue sur l'océan possède son propre jardin privé avec piscine à température contrôlée, pavillon de restauration séparé, lit jacuzzi, vue imprenable sur l'océan Indien et transats privés réservés avec kiosque. Pour des vacances encore plus spéciales à l'île Maurice, notre Oceanview Pool Villa coche toutes les cases.\r\n
\r\n
D'une superficie de 250 mètres carrés, notre villa avec piscine avec vue sur l'océan est le cadre idéal pour votre escapade à l'île Maurice. La villa comprend un lit king size, un écran plat LCD avec une variété de chaînes internationales, un système de divertissement, une connexion Wi-Fi haut débit, un plateau/bouilloire, une machine à expresso, un minibar, un coin salon confortable, un bureau en bois et une salle de bain spacieuse et un dressing. Vous pouvez également profiter de votre dressing, de votre baignoire surdimensionnée, de votre douche à effet pluie et de votre douche extérieure.
"""
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2469
"adult_amount" => 3780
"children_amount" => 0
"basis_amount" => 3780
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 945
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 945
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 945
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 945
"kids_price" => 0
]
]
]
]
6 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 7
"room_picture" => "/uploads/rooms/7/67174e008055a762964354.jpg"
"room_name" => "Junior Suite Bord de plage"
"room_slug" => "junior-suite-bord-de-plage"
"room_description" => """
Nos Junior Suites bénéficient d'un emplacement en bord de mer au premier étage et bénéficient d'une vue panoramique imprenable sur l'océan Indien et les plages privées de Shanti Maurice. Naviguez avec les vues naturelles spectaculaires, les sons et les odeurs de l'océan.\r\n
\r\n
Nos Junior Suites comprennent une terrasse couverte en bois équipée de transats, un lit king-size ainsi qu'une salle de bain et dressing spacieux. D'une superficie de 65 m², nos Junior Suites offrent un hébergement spacieux et confortable et sont équipées d'un écran plat LCD avec une variété de chaînes internationales, d'un système de divertissement, d'une connexion Wi-Fi haut débit, d'un plateau/bouilloire, d'un Machine à expresso et minibar.
"""
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2458
"adult_amount" => 2080
"children_amount" => 0
"basis_amount" => 2080
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
]
]
]
7 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 6
"room_picture" => "/uploads/rooms/6/6667ec2169223829631382.png"
"room_name" => "Junior Suite Bord de mer"
"room_slug" => "junior-suite-bord-de-mer"
"room_description" => """
Nos suites junior bénéficient d'un emplacement en bord de mer au rez-de-chaussée, équipées de transats privés réservés avec un kiosque sur la plage juste en face de la suite, à quelques pas du doux sable blanc de notre plage isolée. La suite est dotée d'une terrasse privée meublée de confortables transats en bois naturel et d'une douche extérieure rafraîchissante. Allongez-vous dans votre lit moelleux, regardez les arbres se balancer dans la brise océanique et écoutez les bruits de la mer.\r\n
\r\n
Nos Junior Suites aux dimensions généreuses mesurent 72 m² et sont équipées d'un écran plat LCD avec une variété de chaînes internationales, d'une connexion Wi-Fi haut débit gratuite, d'un plateau/bouilloire, d'une machine à expresso, d'une grande salle de bain et d'un dressing séparé avec un placard ouvert et coiffeuse.
"""
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2447
"adult_amount" => 1820
"children_amount" => 0
"basis_amount" => 1820
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 455
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 455
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 455
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 455
"kids_price" => 0
]
]
]
]
8 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 5
"room_picture" => "/uploads/rooms/5/6721be89e316a938909597.jpg"
"room_name" => "Junior Suite Vue lagon"
"room_slug" => "junior-suite-vue-lagon"
"room_description" => """
Chacune de nos Junior Suites avec vue imprenable sur le lagon est décorée dans des tons terreux neutres pour détendre le corps et apaiser l'esprit. De grandes portes coulissantes s'ouvrent sur la terrasse pour laisser la brise marine fraîche entrer dans la pièce et révéler une vue inégalée sur le magnifique océan Indien.\r\n
\r\n
Nos Junior Suites aux dimensions généreuses mesurent 65 à 72 m² et sont équipées d'un écran plat LCD avec une variété de chaînes internationales, d'un système de divertissement, d'une connexion Wi-Fi haut débit, d'un plateau/bouilloire, d'une machine à expresso, d'un grand salle de bains et un dressing séparé avec un placard ouvert et une coiffeuse.
"""
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2436
"adult_amount" => 1700
"children_amount" => 0
"basis_amount" => 1700
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 425
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 425
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 425
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 425
"kids_price" => 0
]
]
]
]
]
]
1 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
"Update Stay Rooms results"
2 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
array:9 [
0 => App\DTO\RoomStayDTO {#4636
-marginRate: 20
-id: 4
-name: "Junior Suite Vue mer"
-slug: "junior-suite-vue-mer"
-picture: "/uploads/rooms/4/671741aee7577958764554.jpg"
-description: """
Chacune de nos suites junior avec vue sur l'océan est décorée dans des tons terreux neutres pour détendre le corps et apaiser l'esprit. De grandes portes coulissantes s'ouvrent sur la terrasse pour laisser la brise marine fraîche entrer dans la pièce et révéler une vue inégalée sur le magnifique océan Indien.\r\n
\r\n
Nos suites junior aux dimensions généreuses mesurent 65 à 72 mètres carrés et sont équipées d'un écran plat LCD avec une variété de chaînes internationales, d'un système de divertissement, d'une connexion Wi-Fi haut débit, d'un plateau/bouilloire, d'une machine à expresso et d'une grande salle de bains. , et un dressing séparé avec un placard ouvert et une coiffeuse.
"""
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 202
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 405
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 405
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 405
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 405
"kids_price" => 0
]
]
"amount" => 1620
]
]
-totalRoomAmount: 1620.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#5649
-marginRate: 20
+extraId: 202
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1620.0
+totalStayAmountWoDiscount: 1620.0
+totalStayAmount: 1620.0
+finalAmountWoDiscount: 1944.0
+finalAmount: 1944.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#5652
-marginRate: 20
+extraId: 26
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 1620.0
+totalStayAmountWoDiscount: 2260.0
+totalStayAmount: 2260.0
+finalAmountWoDiscount: 2712.0
+finalAmount: 2712.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#5667
-marginRate: 20
+extraId: 28
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 260
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1040
+kidsExtrasAmount: 0
+stayExtrasAmount: 1040
+stayRoomAmount: 1620.0
+totalStayAmountWoDiscount: 2660.0
+totalStayAmount: 2660.0
+finalAmountWoDiscount: 3192.0
+finalAmount: 3192.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#5668
-marginRate: 20
+extraId: 30
+name: "Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 380
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1520
+kidsExtrasAmount: 0
+stayExtrasAmount: 1520
+stayRoomAmount: 1620.0
+totalStayAmountWoDiscount: 3140.0
+totalStayAmount: 3140.0
+finalAmountWoDiscount: 3768.0
+finalAmount: 3768.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
1 => App\DTO\RoomStayDTO {#5601
-marginRate: 20
-id: 12
-name: "Shanti Villa"
-slug: "shanti-villa"
-picture: "/uploads/rooms/12/671750740fe4c819042342.jpg"
-description: """
Répartie sur 1 000 m², la Villa Shanti est faite sur mesure pour chaque séjour, pour un couple qui souhaite apprécier l'intimité intime, une escapade en famille ou de joyeuses retrouvailles dans son emplacement idyllique sur la péninsule avec intimité et vue imprenable sur la mer. La Villa comprend trois chambres : deux chambres principales avec lits king size et une troisième chambre avec lits jumeaux, chacune avec douche extérieure à effet pluie. Un espace salle à manger séparé est disponible ainsi qu'une cuisine adjacente, permettant aux clients de bénéficier des services du majordome dédié du complexe pendant leur séjour.\r\n
\r\n
À quelques pas de son salon spacieux, la piscine privée à température contrôlée (140 m²) est intégrée avec des lits Jaccuzi et une grande terrasse, des cours fermées et un balcon enveloppant avec des jardins privés paysagers exotiques.
"""
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 202
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 4125
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 4125
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 4125
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 4125
"kids_price" => 0
]
]
"amount" => 16500
]
]
-totalRoomAmount: 16500.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#5669
-marginRate: 20
+extraId: 202
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 16500.0
+totalStayAmountWoDiscount: 16500.0
+totalStayAmount: 16500.0
+finalAmountWoDiscount: 19800.0
+finalAmount: 19800.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#5670
-marginRate: 20
+extraId: 26
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 16500.0
+totalStayAmountWoDiscount: 17140.0
+totalStayAmount: 17140.0
+finalAmountWoDiscount: 20568.0
+finalAmount: 20568.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#5671
-marginRate: 20
+extraId: 28
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 260
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1040
+kidsExtrasAmount: 0
+stayExtrasAmount: 1040
+stayRoomAmount: 16500.0
+totalStayAmountWoDiscount: 17540.0
+totalStayAmount: 17540.0
+finalAmountWoDiscount: 21048.0
+finalAmount: 21048.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#5672
-marginRate: 20
+extraId: 30
+name: "Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 380
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1520
+kidsExtrasAmount: 0
+stayExtrasAmount: 1520
+stayRoomAmount: 16500.0
+totalStayAmountWoDiscount: 18020.0
+totalStayAmount: 18020.0
+finalAmountWoDiscount: 21624.0
+finalAmount: 21624.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
2 => App\DTO\RoomStayDTO {#5622
-marginRate: 20
-id: 11
-name: "Villa Piscine Double Suite Bord de mer"
-slug: "villa-piscine-double-suite-bord-de-mer"
-picture: "/uploads/rooms/11/67175114d504a921657988.jpg"
-description: """
Notre vue sur l'océan | La Villa Double Suite avec Piscine en Bord de Mer offre une retraite familiale vraiment luxueuse et sophistiquée. Située à proximité de la plage et entourée de ses propres jardins exotiques privés, notre villa suite double offre un espace supplémentaire pour toute la famille.\r\n
\r\n
La villa comprend une piscine privée à température contrôlée, un pavillon de restauration séparé, un lit jacuzzi et se trouve à proximité de l'océan Indien et de notre plage. La villa familiale mesure 675 m² et comprend une chambre principale avec salle de bains privative et une chambre supplémentaire avec un lit king size, un écran plat LCD avec une variété de chaînes internationales, un système de divertissement, une connexion Wi-Fi haut débit, du café et du thé. équipements, machines à expresso, mini-bars, un coin salon confortable, un bureau en bois, une salle de bains spacieuse et un dressing. Vous pouvez également profiter de votre dressing, de votre baignoire surdimensionnée, de votre douche à effet pluie, de votre douche extérieure et de transats privés réservés avec kiosque.
"""
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 202
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 2805
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 2805
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 2805
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 2805
"kids_price" => 0
]
]
"amount" => 11220
]
]
-totalRoomAmount: 11220.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#5673
-marginRate: 20
+extraId: 202
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 11220.0
+totalStayAmountWoDiscount: 11220.0
+totalStayAmount: 11220.0
+finalAmountWoDiscount: 13464.0
+finalAmount: 13464.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#5674
-marginRate: 20
+extraId: 26
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 11220.0
+totalStayAmountWoDiscount: 11860.0
+totalStayAmount: 11860.0
+finalAmountWoDiscount: 14232.0
+finalAmount: 14232.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#5675
-marginRate: 20
+extraId: 28
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 260
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1040
+kidsExtrasAmount: 0
+stayExtrasAmount: 1040
+stayRoomAmount: 11220.0
+totalStayAmountWoDiscount: 12260.0
+totalStayAmount: 12260.0
+finalAmountWoDiscount: 14712.0
+finalAmount: 14712.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#5676
-marginRate: 20
+extraId: 30
+name: "Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 380
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1520
+kidsExtrasAmount: 0
+stayExtrasAmount: 1520
+stayRoomAmount: 11220.0
+totalStayAmountWoDiscount: 12740.0
+totalStayAmount: 12740.0
+finalAmountWoDiscount: 15288.0
+finalAmount: 15288.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
3 => App\DTO\RoomStayDTO {#5621
-marginRate: 20
-id: 10
-name: "Villa Piscine Double Suite Vue mer"
-slug: "villa-piscine-double-suite-vue-mer"
-picture: "/uploads/rooms/10/6667e9794edd1307117004.jpg"
-description: """
Notre vue sur l'océan La Villa Double Suite avec Piscine offre une retraite familiale vraiment luxueuse et sophistiquée. Située à proximité de la plage et entourée de ses propres jardins exotiques privés, notre villa suite double offre un espace supplémentaire pour toute la famille.\r\n
\r\n
La villa comprend une piscine privée à température contrôlée, un pavillon de restauration séparé, un lit jacuzzi et se trouve à proximité de l'océan Indien et de notre plage. La villa familiale mesure 675 m² et comprend une chambre principale avec salle de bains privative et une chambre supplémentaire avec un lit king size, un écran plat LCD avec une variété de chaînes internationales, un système de divertissement, une connexion Wi-Fi haut débit, du café et du thé. équipements, machines à expresso, mini-bars, un coin salon confortable, un bureau en bois, une salle de bains spacieuse et un dressing. Vous pouvez également profiter de votre dressing, de votre baignoire surdimensionnée, de votre douche à effet pluie, de votre douche extérieure et de transats privés réservés avec kiosque.
"""
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 202
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 2415
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 2415
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 2415
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 2415
"kids_price" => 0
]
]
"amount" => 9660
]
]
-totalRoomAmount: 9660.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#5677
-marginRate: 20
+extraId: 202
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 9660.0
+totalStayAmountWoDiscount: 9660.0
+totalStayAmount: 9660.0
+finalAmountWoDiscount: 11592.0
+finalAmount: 11592.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#5678
-marginRate: 20
+extraId: 26
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 9660.0
+totalStayAmountWoDiscount: 10300.0
+totalStayAmount: 10300.0
+finalAmountWoDiscount: 12360.0
+finalAmount: 12360.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#5679
-marginRate: 20
+extraId: 28
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 260
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1040
+kidsExtrasAmount: 0
+stayExtrasAmount: 1040
+stayRoomAmount: 9660.0
+totalStayAmountWoDiscount: 10700.0
+totalStayAmount: 10700.0
+finalAmountWoDiscount: 12840.0
+finalAmount: 12840.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#5680
-marginRate: 20
+extraId: 30
+name: "Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 380
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1520
+kidsExtrasAmount: 0
+stayExtrasAmount: 1520
+stayRoomAmount: 9660.0
+totalStayAmountWoDiscount: 11180.0
+totalStayAmount: 11180.0
+finalAmountWoDiscount: 13416.0
+finalAmount: 13416.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
4 => App\DTO\RoomStayDTO {#5599
-marginRate: 20
-id: 9
-name: "Villa Piscine Bord de plage"
-slug: "villa-piscine-bord-de-plage"
-picture: "/uploads/rooms/9/671751a8b278b981187283.jpg"
-description: """
Notre Beachfront Suite Pool Villa est l’évasion luxueuse ultime. Équipée de transats privés réservés avec kiosque sur la plage juste en face de la villa, une piscine privée à température contrôlée, un pavillon de salle à manger séparé et un lit jacuzzi sont disponibles pour votre confort.\r\n
\r\n
D'une superficie de 375 mètres carrés, notre luxueuse villa avec piscine en bord de mer est le cadre idéal pour votre escapade à l'île Maurice. La villa comprend un lit king size, un écran plat LCD avec une variété de chaînes internationales, un système de divertissement, une connexion Wi-Fi haut débit, un plateau/bouilloire, une machine à expresso, un minibar, un coin salon confortable, un bureau en bois et une salle de bain spacieuse et un dressing. Vous pouvez également profiter de votre dressing, de votre baignoire surdimensionnée, de votre douche à effet pluie et de votre douche extérieure.
"""
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 202
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1255
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1255
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1255
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1255
"kids_price" => 0
]
]
"amount" => 5020
]
]
-totalRoomAmount: 5020.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#5681
-marginRate: 20
+extraId: 202
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 5020.0
+totalStayAmountWoDiscount: 5020.0
+totalStayAmount: 5020.0
+finalAmountWoDiscount: 6024.0
+finalAmount: 6024.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#5682
-marginRate: 20
+extraId: 26
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 5020.0
+totalStayAmountWoDiscount: 5660.0
+totalStayAmount: 5660.0
+finalAmountWoDiscount: 6792.0
+finalAmount: 6792.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#5683
-marginRate: 20
+extraId: 28
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 260
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1040
+kidsExtrasAmount: 0
+stayExtrasAmount: 1040
+stayRoomAmount: 5020.0
+totalStayAmountWoDiscount: 6060.0
+totalStayAmount: 6060.0
+finalAmountWoDiscount: 7272.0
+finalAmount: 7272.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#5684
-marginRate: 20
+extraId: 30
+name: "Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 380
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1520
+kidsExtrasAmount: 0
+stayExtrasAmount: 1520
+stayRoomAmount: 5020.0
+totalStayAmountWoDiscount: 6540.0
+totalStayAmount: 6540.0
+finalAmountWoDiscount: 7848.0
+finalAmount: 7848.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
5 => App\DTO\RoomStayDTO {#5640
-marginRate: 20
-id: 8
-name: "Villa Piscine Vue mer"
-slug: "villa-piscine-vue-mer"
-picture: "/uploads/rooms/8/671748ab7574d441062092.jpg"
-description: """
Notre villa avec piscine avec vue sur l'océan possède son propre jardin privé avec piscine à température contrôlée, pavillon de restauration séparé, lit jacuzzi, vue imprenable sur l'océan Indien et transats privés réservés avec kiosque. Pour des vacances encore plus spéciales à l'île Maurice, notre Oceanview Pool Villa coche toutes les cases.\r\n
\r\n
D'une superficie de 250 mètres carrés, notre villa avec piscine avec vue sur l'océan est le cadre idéal pour votre escapade à l'île Maurice. La villa comprend un lit king size, un écran plat LCD avec une variété de chaînes internationales, un système de divertissement, une connexion Wi-Fi haut débit, un plateau/bouilloire, une machine à expresso, un minibar, un coin salon confortable, un bureau en bois et une salle de bain spacieuse et un dressing. Vous pouvez également profiter de votre dressing, de votre baignoire surdimensionnée, de votre douche à effet pluie et de votre douche extérieure.
"""
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 202
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 945
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 945
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 945
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 945
"kids_price" => 0
]
]
"amount" => 3780
]
]
-totalRoomAmount: 3780.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#5685
-marginRate: 20
+extraId: 202
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 3780.0
+totalStayAmountWoDiscount: 3780.0
+totalStayAmount: 3780.0
+finalAmountWoDiscount: 4536.0
+finalAmount: 4536.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#5686
-marginRate: 20
+extraId: 26
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 3780.0
+totalStayAmountWoDiscount: 4420.0
+totalStayAmount: 4420.0
+finalAmountWoDiscount: 5304.0
+finalAmount: 5304.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#5687
-marginRate: 20
+extraId: 28
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 260
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1040
+kidsExtrasAmount: 0
+stayExtrasAmount: 1040
+stayRoomAmount: 3780.0
+totalStayAmountWoDiscount: 4820.0
+totalStayAmount: 4820.0
+finalAmountWoDiscount: 5784.0
+finalAmount: 5784.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#5688
-marginRate: 20
+extraId: 30
+name: "Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 380
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1520
+kidsExtrasAmount: 0
+stayExtrasAmount: 1520
+stayRoomAmount: 3780.0
+totalStayAmountWoDiscount: 5300.0
+totalStayAmount: 5300.0
+finalAmountWoDiscount: 6360.0
+finalAmount: 6360.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
6 => App\DTO\RoomStayDTO {#5615
-marginRate: 20
-id: 7
-name: "Junior Suite Bord de plage"
-slug: "junior-suite-bord-de-plage"
-picture: "/uploads/rooms/7/67174e008055a762964354.jpg"
-description: """
Nos Junior Suites bénéficient d'un emplacement en bord de mer au premier étage et bénéficient d'une vue panoramique imprenable sur l'océan Indien et les plages privées de Shanti Maurice. Naviguez avec les vues naturelles spectaculaires, les sons et les odeurs de l'océan.\r\n
\r\n
Nos Junior Suites comprennent une terrasse couverte en bois équipée de transats, un lit king-size ainsi qu'une salle de bain et dressing spacieux. D'une superficie de 65 m², nos Junior Suites offrent un hébergement spacieux et confortable et sont équipées d'un écran plat LCD avec une variété de chaînes internationales, d'un système de divertissement, d'une connexion Wi-Fi haut débit, d'un plateau/bouilloire, d'un Machine à expresso et minibar.
"""
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 202
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
]
"amount" => 2080
]
]
-totalRoomAmount: 2080.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#5689
-marginRate: 20
+extraId: 202
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2080.0
+totalStayAmountWoDiscount: 2080.0
+totalStayAmount: 2080.0
+finalAmountWoDiscount: 2496.0
+finalAmount: 2496.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#5690
-marginRate: 20
+extraId: 26
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 2080.0
+totalStayAmountWoDiscount: 2720.0
+totalStayAmount: 2720.0
+finalAmountWoDiscount: 3264.0
+finalAmount: 3264.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#5691
-marginRate: 20
+extraId: 28
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 260
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1040
+kidsExtrasAmount: 0
+stayExtrasAmount: 1040
+stayRoomAmount: 2080.0
+totalStayAmountWoDiscount: 3120.0
+totalStayAmount: 3120.0
+finalAmountWoDiscount: 3744.0
+finalAmount: 3744.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#5692
-marginRate: 20
+extraId: 30
+name: "Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 380
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1520
+kidsExtrasAmount: 0
+stayExtrasAmount: 1520
+stayRoomAmount: 2080.0
+totalStayAmountWoDiscount: 3600.0
+totalStayAmount: 3600.0
+finalAmountWoDiscount: 4320.0
+finalAmount: 4320.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
7 => App\DTO\RoomStayDTO {#5638
-marginRate: 20
-id: 6
-name: "Junior Suite Bord de mer"
-slug: "junior-suite-bord-de-mer"
-picture: "/uploads/rooms/6/6667ec2169223829631382.png"
-description: """
Nos suites junior bénéficient d'un emplacement en bord de mer au rez-de-chaussée, équipées de transats privés réservés avec un kiosque sur la plage juste en face de la suite, à quelques pas du doux sable blanc de notre plage isolée. La suite est dotée d'une terrasse privée meublée de confortables transats en bois naturel et d'une douche extérieure rafraîchissante. Allongez-vous dans votre lit moelleux, regardez les arbres se balancer dans la brise océanique et écoutez les bruits de la mer.\r\n
\r\n
Nos Junior Suites aux dimensions généreuses mesurent 72 m² et sont équipées d'un écran plat LCD avec une variété de chaînes internationales, d'une connexion Wi-Fi haut débit gratuite, d'un plateau/bouilloire, d'une machine à expresso, d'une grande salle de bain et d'un dressing séparé avec un placard ouvert et coiffeuse.
"""
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 202
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 455
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 455
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 455
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 455
"kids_price" => 0
]
]
"amount" => 1820
]
]
-totalRoomAmount: 1820.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#5693
-marginRate: 20
+extraId: 202
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1820.0
+totalStayAmountWoDiscount: 1820.0
+totalStayAmount: 1820.0
+finalAmountWoDiscount: 2184.0
+finalAmount: 2184.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#5694
-marginRate: 20
+extraId: 26
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 1820.0
+totalStayAmountWoDiscount: 2460.0
+totalStayAmount: 2460.0
+finalAmountWoDiscount: 2952.0
+finalAmount: 2952.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#5695
-marginRate: 20
+extraId: 28
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 260
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1040
+kidsExtrasAmount: 0
+stayExtrasAmount: 1040
+stayRoomAmount: 1820.0
+totalStayAmountWoDiscount: 2860.0
+totalStayAmount: 2860.0
+finalAmountWoDiscount: 3432.0
+finalAmount: 3432.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#5696
-marginRate: 20
+extraId: 30
+name: "Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 380
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1520
+kidsExtrasAmount: 0
+stayExtrasAmount: 1520
+stayRoomAmount: 1820.0
+totalStayAmountWoDiscount: 3340.0
+totalStayAmount: 3340.0
+finalAmountWoDiscount: 4008.0
+finalAmount: 4008.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
8 => App\DTO\RoomStayDTO {#5641
-marginRate: 20
-id: 5
-name: "Junior Suite Vue lagon"
-slug: "junior-suite-vue-lagon"
-picture: "/uploads/rooms/5/6721be89e316a938909597.jpg"
-description: """
Chacune de nos Junior Suites avec vue imprenable sur le lagon est décorée dans des tons terreux neutres pour détendre le corps et apaiser l'esprit. De grandes portes coulissantes s'ouvrent sur la terrasse pour laisser la brise marine fraîche entrer dans la pièce et révéler une vue inégalée sur le magnifique océan Indien.\r\n
\r\n
Nos Junior Suites aux dimensions généreuses mesurent 65 à 72 m² et sont équipées d'un écran plat LCD avec une variété de chaînes internationales, d'un système de divertissement, d'une connexion Wi-Fi haut débit, d'un plateau/bouilloire, d'une machine à expresso, d'un grand salle de bains et un dressing séparé avec un placard ouvert et une coiffeuse.
"""
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 202
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 425
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 425
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 425
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 425
"kids_price" => 0
]
]
"amount" => 1700
]
]
-totalRoomAmount: 1700.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#5697
-marginRate: 20
+extraId: 202
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1700.0
+totalStayAmountWoDiscount: 1700.0
+totalStayAmount: 1700.0
+finalAmountWoDiscount: 2040.0
+finalAmount: 2040.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#5698
-marginRate: 20
+extraId: 26
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 1700.0
+totalStayAmountWoDiscount: 2340.0
+totalStayAmount: 2340.0
+finalAmountWoDiscount: 2808.0
+finalAmount: 2808.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#5699
-marginRate: 20
+extraId: 28
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 260
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1040
+kidsExtrasAmount: 0
+stayExtrasAmount: 1040
+stayRoomAmount: 1700.0
+totalStayAmountWoDiscount: 2740.0
+totalStayAmount: 2740.0
+finalAmountWoDiscount: 3288.0
+finalAmount: 3288.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#5700
-marginRate: 20
+extraId: 30
+name: "Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 380
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1520
+kidsExtrasAmount: 0
+stayExtrasAmount: 1520
+stayRoomAmount: 1700.0
+totalStayAmountWoDiscount: 3220.0
+totalStayAmount: 3220.0
+finalAmountWoDiscount: 3864.0
+finalAmount: 3864.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
]
1 in
RoomStayCalculation.php
line 274:
{
$offers_eligibled = [];
if ($this->debug) {
dump('All available offers of the hotel', $offers);
}
foreach ($offers as $key => $offer) {
"All available offers of the hotel"
2 in
RoomStayCalculation.php
line 274:
{
$offers_eligibled = [];
if ($this->debug) {
dump('All available offers of the hotel', $offers);
}
foreach ($offers as $key => $offer) {
Doctrine\Common\Collections\ArrayCollection {#6007
-elements: array:5 [
0 => App\Entity\Offers {#5761
-id: 119
-title: "LONG STAY OFFER"
-type: "LongStay"
-hotel: App\Entity\Hotels {#944
-id: 2
-name: "Shanti Maurice Resort & Spa"
-description: "Nous vivons notre vie à travers nos sens. Que vous aimiez vous détendre sur notre plage de sable fin avec un cocktail rafraîchissant à la main tandis que le parfum sucré de la canne à sucre remplit l'air, ou que vous préfériez savourer les aliments les plus frais dans nos restaurants, Shanti Maurice a tout ce qu'il vous faut."
-website: "https://www.shantimaurice.com/"
-stars: 5
-youtubeVideoId: "_2G57OzNQCc"
-phone: "+230 603 7200"
-email: "info@shantimaurice.com"
-active: true
-gmapUrl: "<iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3736.8522194787442!2d57.46867631217999!3d-20.5122834809318!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x217c65804baf2027%3A0x6f997c9d7b7cd33d!2sShanti%20Maurice%20Resort%20%26%20Spa!5e0!3m2!1sfr!2sfr!4v1718968560926!5m2!1sfr!2sfr" width="100%" height="600" style="border:0;" allowfullscreen="" loading="lazy" referrerpolicy="no-referrer-when-downgrade"></iframe>"
-zone: "Sud"
-createdAt: DateTimeImmutable @1714145854 {#983
date: 2024-04-26 15:37:34.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672825 {#986
date: 2024-10-23 08:40:25.0 UTC (+00:00)
}
-rooms: Doctrine\ORM\PersistentCollection {#948
#collection: Doctrine\Common\Collections\ArrayCollection {#949
-elements: array:9 [
0 => App\Entity\Rooms {#1711
-id: 4
-name: "Junior Suite Vue mer"
-description: """
Chacune de nos suites junior avec vue sur l'océan est décorée dans des tons terreux neutres pour détendre le corps et apaiser l'esprit. De grandes portes coulissantes s'ouvrent sur la terrasse pour laisser la brise marine fraîche entrer dans la pièce et révéler une vue inégalée sur le magnifique océan Indien.\r\n
\r\n
Nos suites junior aux dimensions généreuses mesurent 65 à 72 mètres carrés et sont équipées d'un écran plat LCD avec une variété de chaînes internationales, d'un système de divertissement, d'une connexion Wi-Fi haut débit, d'un plateau/bouilloire, d'une machine à expresso et d'une grande salle de bains. , et un dressing séparé avec un placard ouvert et une coiffeuse.
"""
-active: true
-hotel: App\Entity\Hotels {#944}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#5450
-elements: array:1 [
0 => App\Entity\RoomPrices {#1718
-id: 2425
-title: "Junior Suite Vue Mer"
-room: App\Entity\Rooms {#1711}
-quantity: 8
-stayStartedAt: DateTimeImmutable @1742083200 {#1707
date: 2025-03-16 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1745107200 {#1708
date: 2025-04-20 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1709
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1710
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "405.00"
-singleOccupancy: "405.00"
-tripleOccupancy: "100.00"
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 100.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1712
#collection: Doctrine\Common\Collections\ArrayCollection {#1713
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1711}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1714
#collection: Doctrine\Common\Collections\ArrayCollection {#1715
-elements: array:20 [
0 => App\Entity\RoomCapacities {#1302
-id: 2880
-room: App\Entity\Rooms {#1711}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#2917
-id: 2881
-room: App\Entity\Rooms {#1711}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3275
-id: 2882
-room: App\Entity\Rooms {#1711}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3273
-id: 2883
-room: App\Entity\Rooms {#1711}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3267
-id: 2884
-room: App\Entity\Rooms {#1711}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3261
-id: 2885
-room: App\Entity\Rooms {#1711}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3064
-id: 2886
-room: App\Entity\Rooms {#1711}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3236
-id: 2887
-room: App\Entity\Rooms {#1711}
-adults: 1
-teens: 1
-children: 1
-babies: 1
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#1960
-id: 2888
-room: App\Entity\Rooms {#1711}
-adults: 1
-teens: 2
-children: null
-babies: null
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#3202
-id: 2889
-room: App\Entity\Rooms {#1711}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#3209
-id: 2890
-room: App\Entity\Rooms {#1711}
-adults: 1
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#3210
-id: 2891
-room: App\Entity\Rooms {#1711}
-adults: 1
-teens: null
-children: 2
-babies: 1
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#3279
-id: 2892
-room: App\Entity\Rooms {#1711}
-adults: 1
-teens: null
-children: 1
-babies: 2
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#3040
-id: 2893
-room: App\Entity\Rooms {#1711}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
14 => App\Entity\RoomCapacities {#3149
-id: 2894
-room: App\Entity\Rooms {#1711}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
15 => App\Entity\RoomCapacities {#3214
-id: 2895
-room: App\Entity\Rooms {#1711}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
16 => App\Entity\RoomCapacities {#3137
-id: 2896
-room: App\Entity\Rooms {#1711}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
17 => App\Entity\RoomCapacities {#3058
-id: 2897
-room: App\Entity\Rooms {#1711}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
18 => App\Entity\RoomCapacities {#3079
-id: 2898
-room: App\Entity\Rooms {#1711}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
19 => App\Entity\RoomCapacities {#3216
-id: 2899
-room: App\Entity\Rooms {#1711}
-adults: 2
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:20 [ …20]
-owner: App\Entity\Rooms {#1711}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1705
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672837 {#1706
date: 2024-10-23 08:40:37.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "671741aee7577958764554.jpg"
-gallery: App\Entity\Galleries {#1719
-id: 49
-hotel: null
-room: App\Entity\Rooms {#1711}
-images: Doctrine\ORM\PersistentCollection {#1720
#collection: Doctrine\Common\Collections\ArrayCollection {#1721
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1719}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Shanti Junior suite vue mer"
}
-mediaDirSlug: "4"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "junior-suite-vue-mer"
}
1 => App\Entity\Rooms {#1728
-id: 12
-name: "Shanti Villa"
-description: """
Répartie sur 1 000 m², la Villa Shanti est faite sur mesure pour chaque séjour, pour un couple qui souhaite apprécier l'intimité intime, une escapade en famille ou de joyeuses retrouvailles dans son emplacement idyllique sur la péninsule avec intimité et vue imprenable sur la mer. La Villa comprend trois chambres : deux chambres principales avec lits king size et une troisième chambre avec lits jumeaux, chacune avec douche extérieure à effet pluie. Un espace salle à manger séparé est disponible ainsi qu'une cuisine adjacente, permettant aux clients de bénéficier des services du majordome dédié du complexe pendant leur séjour.\r\n
\r\n
À quelques pas de son salon spacieux, la piscine privée à température contrôlée (140 m²) est intégrée avec des lits Jaccuzi et une grande terrasse, des cours fermées et un balcon enveloppant avec des jardins privés paysagers exotiques.
"""
-active: true
-hotel: App\Entity\Hotels {#944}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#4998
-elements: array:1 [
0 => App\Entity\RoomPrices {#1735
-id: 2513
-title: "Shanti Villa"
-room: App\Entity\Rooms {#1728}
-quantity: 1
-stayStartedAt: DateTimeImmutable @1742083200 {#1724
date: 2025-03-16 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1745107200 {#1725
date: 2025-04-20 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1726
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1727
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "4125.00"
-singleOccupancy: "4125.00"
-tripleOccupancy: "100.00"
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 100.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1729
#collection: Doctrine\Common\Collections\ArrayCollection {#1730
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1728}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1731
#collection: Doctrine\Common\Collections\ArrayCollection {#1732
-elements: array:19 [
0 => App\Entity\RoomCapacities {#3363
-id: 3038
-room: App\Entity\Rooms {#1728}
-adults: 2
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3364
-id: 3039
-room: App\Entity\Rooms {#1728}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3365
-id: 3040
-room: App\Entity\Rooms {#1728}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3366
-id: 3041
-room: App\Entity\Rooms {#1728}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3367
-id: 3042
-room: App\Entity\Rooms {#1728}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3368
-id: 3043
-room: App\Entity\Rooms {#1728}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3369
-id: 3044
-room: App\Entity\Rooms {#1728}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3370
-id: 3045
-room: App\Entity\Rooms {#1728}
-adults: 1
-teens: null
-children: 1
-babies: 2
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#3371
-id: 3046
-room: App\Entity\Rooms {#1728}
-adults: 1
-teens: null
-children: 2
-babies: 1
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#3372
-id: 3047
-room: App\Entity\Rooms {#1728}
-adults: 1
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#3373
-id: 3048
-room: App\Entity\Rooms {#1728}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#3374
-id: 3049
-room: App\Entity\Rooms {#1728}
-adults: 1
-teens: 1
-children: 1
-babies: 1
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#3375
-id: 3050
-room: App\Entity\Rooms {#1728}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#3376
-id: 3051
-room: App\Entity\Rooms {#1728}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
14 => App\Entity\RoomCapacities {#3377
-id: 3052
-room: App\Entity\Rooms {#1728}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
15 => App\Entity\RoomCapacities {#3378
-id: 3053
-room: App\Entity\Rooms {#1728}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
16 => App\Entity\RoomCapacities {#3379
-id: 3054
-room: App\Entity\Rooms {#1728}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
17 => App\Entity\RoomCapacities {#3380
-id: 3055
-room: App\Entity\Rooms {#1728}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
18 => App\Entity\RoomCapacities {#3381
-id: 3056
-room: App\Entity\Rooms {#1728}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:19 [ …19]
-owner: App\Entity\Rooms {#1728}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1722
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672837 {#1723
date: 2024-10-23 08:40:37.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "671750740fe4c819042342.jpg"
-gallery: App\Entity\Galleries {#1736
-id: 50
-hotel: null
-room: App\Entity\Rooms {#1728}
-images: Doctrine\ORM\PersistentCollection {#1737
#collection: Doctrine\Common\Collections\ArrayCollection {#1738
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1736}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Shanti villa chambre"
}
-mediaDirSlug: "12"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "shanti-villa"
}
2 => App\Entity\Rooms {#1745
-id: 11
-name: "Villa Piscine Double Suite Bord de mer"
-description: """
Notre vue sur l'océan | La Villa Double Suite avec Piscine en Bord de Mer offre une retraite familiale vraiment luxueuse et sophistiquée. Située à proximité de la plage et entourée de ses propres jardins exotiques privés, notre villa suite double offre un espace supplémentaire pour toute la famille.\r\n
\r\n
La villa comprend une piscine privée à température contrôlée, un pavillon de restauration séparé, un lit jacuzzi et se trouve à proximité de l'océan Indien et de notre plage. La villa familiale mesure 675 m² et comprend une chambre principale avec salle de bains privative et une chambre supplémentaire avec un lit king size, un écran plat LCD avec une variété de chaînes internationales, un système de divertissement, une connexion Wi-Fi haut débit, du café et du thé. équipements, machines à expresso, mini-bars, un coin salon confortable, un bureau en bois, une salle de bains spacieuse et un dressing. Vous pouvez également profiter de votre dressing, de votre baignoire surdimensionnée, de votre douche à effet pluie, de votre douche extérieure et de transats privés réservés avec kiosque.
"""
-active: true
-hotel: App\Entity\Hotels {#944}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#5468
-elements: array:1 [
0 => App\Entity\RoomPrices {#1752
-id: 2502
-title: "Villa Piscine Double Suite Bord de mer"
-room: App\Entity\Rooms {#1745}
-quantity: 1
-stayStartedAt: DateTimeImmutable @1742083200 {#1741
date: 2025-03-16 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1745107200 {#1742
date: 2025-04-20 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1743
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1744
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "2805.00"
-singleOccupancy: "2805.00"
-tripleOccupancy: "100.00"
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 100.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1746
#collection: Doctrine\Common\Collections\ArrayCollection {#1747
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1745}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1748
#collection: Doctrine\Common\Collections\ArrayCollection {#1749
-elements: array:19 [
0 => App\Entity\RoomCapacities {#3344
-id: 3019
-room: App\Entity\Rooms {#1745}
-adults: 2
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3345
-id: 3020
-room: App\Entity\Rooms {#1745}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3346
-id: 3021
-room: App\Entity\Rooms {#1745}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3347
-id: 3022
-room: App\Entity\Rooms {#1745}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3348
-id: 3023
-room: App\Entity\Rooms {#1745}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3349
-id: 3024
-room: App\Entity\Rooms {#1745}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3350
-id: 3025
-room: App\Entity\Rooms {#1745}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3351
-id: 3026
-room: App\Entity\Rooms {#1745}
-adults: 1
-teens: null
-children: 1
-babies: 2
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#3352
-id: 3027
-room: App\Entity\Rooms {#1745}
-adults: 1
-teens: null
-children: 2
-babies: 1
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#3353
-id: 3028
-room: App\Entity\Rooms {#1745}
-adults: 1
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#3354
-id: 3029
-room: App\Entity\Rooms {#1745}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#3355
-id: 3030
-room: App\Entity\Rooms {#1745}
-adults: 1
-teens: 1
-children: 1
-babies: 1
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#3356
-id: 3031
-room: App\Entity\Rooms {#1745}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#3357
-id: 3032
-room: App\Entity\Rooms {#1745}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
14 => App\Entity\RoomCapacities {#3358
-id: 3033
-room: App\Entity\Rooms {#1745}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
15 => App\Entity\RoomCapacities {#3359
-id: 3034
-room: App\Entity\Rooms {#1745}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
16 => App\Entity\RoomCapacities {#3360
-id: 3035
-room: App\Entity\Rooms {#1745}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
17 => App\Entity\RoomCapacities {#3361
-id: 3036
-room: App\Entity\Rooms {#1745}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
18 => App\Entity\RoomCapacities {#3362
-id: 3037
-room: App\Entity\Rooms {#1745}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:19 [ …19]
-owner: App\Entity\Rooms {#1745}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1739
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672837 {#1740
date: 2024-10-23 08:40:37.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "67175114d504a921657988.jpg"
-gallery: App\Entity\Galleries {#1753
-id: 52
-hotel: null
-room: App\Entity\Rooms {#1745}
-images: Doctrine\ORM\PersistentCollection {#1754
#collection: Doctrine\Common\Collections\ArrayCollection {#1755
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1753}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Shanti villa piscine double bord de mer"
}
-mediaDirSlug: "11"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "villa-piscine-double-suite-bord-de-mer"
}
3 => App\Entity\Rooms {#1762
-id: 10
-name: "Villa Piscine Double Suite Vue mer"
-description: """
Notre vue sur l'océan La Villa Double Suite avec Piscine offre une retraite familiale vraiment luxueuse et sophistiquée. Située à proximité de la plage et entourée de ses propres jardins exotiques privés, notre villa suite double offre un espace supplémentaire pour toute la famille.\r\n
\r\n
La villa comprend une piscine privée à température contrôlée, un pavillon de restauration séparé, un lit jacuzzi et se trouve à proximité de l'océan Indien et de notre plage. La villa familiale mesure 675 m² et comprend une chambre principale avec salle de bains privative et une chambre supplémentaire avec un lit king size, un écran plat LCD avec une variété de chaînes internationales, un système de divertissement, une connexion Wi-Fi haut débit, du café et du thé. équipements, machines à expresso, mini-bars, un coin salon confortable, un bureau en bois, une salle de bains spacieuse et un dressing. Vous pouvez également profiter de votre dressing, de votre baignoire surdimensionnée, de votre douche à effet pluie, de votre douche extérieure et de transats privés réservés avec kiosque.
"""
-active: true
-hotel: App\Entity\Hotels {#944}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#5489
-elements: array:1 [
0 => App\Entity\RoomPrices {#1769
-id: 2491
-title: "Villa Piscine Double Suite Vue mer"
-room: App\Entity\Rooms {#1762}
-quantity: 2
-stayStartedAt: DateTimeImmutable @1742083200 {#1758
date: 2025-03-16 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1745107200 {#1759
date: 2025-04-20 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1760
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1761
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "2415.00"
-singleOccupancy: "2415.00"
-tripleOccupancy: "100.00"
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 100.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1763
#collection: Doctrine\Common\Collections\ArrayCollection {#1764
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1762}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1765
#collection: Doctrine\Common\Collections\ArrayCollection {#1766
-elements: array:19 [
0 => App\Entity\RoomCapacities {#3325
-id: 3000
-room: App\Entity\Rooms {#1762}
-adults: 2
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3326
-id: 3001
-room: App\Entity\Rooms {#1762}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3327
-id: 3002
-room: App\Entity\Rooms {#1762}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3328
-id: 3003
-room: App\Entity\Rooms {#1762}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3329
-id: 3004
-room: App\Entity\Rooms {#1762}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3330
-id: 3005
-room: App\Entity\Rooms {#1762}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3331
-id: 3006
-room: App\Entity\Rooms {#1762}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3332
-id: 3007
-room: App\Entity\Rooms {#1762}
-adults: 1
-teens: null
-children: 1
-babies: 2
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#3333
-id: 3008
-room: App\Entity\Rooms {#1762}
-adults: 1
-teens: null
-children: 2
-babies: 1
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#3334
-id: 3009
-room: App\Entity\Rooms {#1762}
-adults: 1
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#3335
-id: 3010
-room: App\Entity\Rooms {#1762}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#3336
-id: 3011
-room: App\Entity\Rooms {#1762}
-adults: 1
-teens: 1
-children: 1
-babies: 1
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#3337
-id: 3012
-room: App\Entity\Rooms {#1762}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#3338
-id: 3013
-room: App\Entity\Rooms {#1762}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
14 => App\Entity\RoomCapacities {#3339
-id: 3014
-room: App\Entity\Rooms {#1762}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
15 => App\Entity\RoomCapacities {#3340
-id: 3015
-room: App\Entity\Rooms {#1762}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
16 => App\Entity\RoomCapacities {#3341
-id: 3016
-room: App\Entity\Rooms {#1762}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
17 => App\Entity\RoomCapacities {#3342
-id: 3017
-room: App\Entity\Rooms {#1762}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
18 => App\Entity\RoomCapacities {#3343
-id: 3018
-room: App\Entity\Rooms {#1762}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:19 [ …19]
-owner: App\Entity\Rooms {#1762}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1756
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672837 {#1757
date: 2024-10-23 08:40:37.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "6667e9794edd1307117004.jpg"
-gallery: App\Entity\Galleries {#1770
-id: 84
-hotel: null
-room: App\Entity\Rooms {#1762}
-images: Doctrine\ORM\PersistentCollection {#1771
#collection: Doctrine\Common\Collections\ArrayCollection {#1772
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1770}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Shanti ville piscine double suite vue mer"
}
-mediaDirSlug: "10"
-lowerRoomPrice: null
-services: null
-slug: "villa-piscine-double-suite-vue-mer"
}
4 => App\Entity\Rooms {#1779
-id: 9
-name: "Villa Piscine Bord de plage"
-description: """
Notre Beachfront Suite Pool Villa est l’évasion luxueuse ultime. Équipée de transats privés réservés avec kiosque sur la plage juste en face de la villa, une piscine privée à température contrôlée, un pavillon de salle à manger séparé et un lit jacuzzi sont disponibles pour votre confort.\r\n
\r\n
D'une superficie de 375 mètres carrés, notre luxueuse villa avec piscine en bord de mer est le cadre idéal pour votre escapade à l'île Maurice. La villa comprend un lit king size, un écran plat LCD avec une variété de chaînes internationales, un système de divertissement, une connexion Wi-Fi haut débit, un plateau/bouilloire, une machine à expresso, un minibar, un coin salon confortable, un bureau en bois et une salle de bain spacieuse et un dressing. Vous pouvez également profiter de votre dressing, de votre baignoire surdimensionnée, de votre douche à effet pluie et de votre douche extérieure.
"""
-active: true
-hotel: App\Entity\Hotels {#944}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#5510
-elements: array:1 [
0 => App\Entity\RoomPrices {#1786
-id: 2480
-title: "Villa Piscine Bord de plage"
-room: App\Entity\Rooms {#1779}
-quantity: 5
-stayStartedAt: DateTimeImmutable @1742083200 {#1775
date: 2025-03-16 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1745107200 {#1776
date: 2025-04-20 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1777
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1778
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "1255.00"
-singleOccupancy: "1255.00"
-tripleOccupancy: "100.00"
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 100.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1780
#collection: Doctrine\Common\Collections\ArrayCollection {#1781
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1779}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1782
#collection: Doctrine\Common\Collections\ArrayCollection {#1783
-elements: array:20 [
0 => App\Entity\RoomCapacities {#3305
-id: 2980
-room: App\Entity\Rooms {#1779}
-adults: 2
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3306
-id: 2981
-room: App\Entity\Rooms {#1779}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3307
-id: 2982
-room: App\Entity\Rooms {#1779}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3308
-id: 2983
-room: App\Entity\Rooms {#1779}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3309
-id: 2984
-room: App\Entity\Rooms {#1779}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3310
-id: 2985
-room: App\Entity\Rooms {#1779}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3311
-id: 2986
-room: App\Entity\Rooms {#1779}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3312
-id: 2987
-room: App\Entity\Rooms {#1779}
-adults: 1
-teens: null
-children: 1
-babies: 2
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#3313
-id: 2988
-room: App\Entity\Rooms {#1779}
-adults: 1
-teens: null
-children: 2
-babies: 1
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#3314
-id: 2989
-room: App\Entity\Rooms {#1779}
-adults: 1
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#3315
-id: 2990
-room: App\Entity\Rooms {#1779}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#3316
-id: 2991
-room: App\Entity\Rooms {#1779}
-adults: 1
-teens: 2
-children: null
-babies: null
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#3317
-id: 2992
-room: App\Entity\Rooms {#1779}
-adults: 1
-teens: 1
-children: 1
-babies: 1
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#3318
-id: 2993
-room: App\Entity\Rooms {#1779}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
14 => App\Entity\RoomCapacities {#3319
-id: 2994
-room: App\Entity\Rooms {#1779}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
15 => App\Entity\RoomCapacities {#3320
-id: 2995
-room: App\Entity\Rooms {#1779}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
16 => App\Entity\RoomCapacities {#3321
-id: 2996
-room: App\Entity\Rooms {#1779}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
17 => App\Entity\RoomCapacities {#3322
-id: 2997
-room: App\Entity\Rooms {#1779}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
18 => App\Entity\RoomCapacities {#3323
-id: 2998
-room: App\Entity\Rooms {#1779}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
19 => App\Entity\RoomCapacities {#3324
-id: 2999
-room: App\Entity\Rooms {#1779}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:20 [ …20]
-owner: App\Entity\Rooms {#1779}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1773
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672837 {#1774
date: 2024-10-23 08:40:37.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "671751a8b278b981187283.jpg"
-gallery: App\Entity\Galleries {#1787
-id: 88
-hotel: null
-room: App\Entity\Rooms {#1779}
-images: Doctrine\ORM\PersistentCollection {#1788
#collection: Doctrine\Common\Collections\ArrayCollection {#1789
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1787}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Shanti villa piscine bord de plage"
}
-mediaDirSlug: "9"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "villa-piscine-bord-de-plage"
}
5 => App\Entity\Rooms {#1796
-id: 8
-name: "Villa Piscine Vue mer"
-description: """
Notre villa avec piscine avec vue sur l'océan possède son propre jardin privé avec piscine à température contrôlée, pavillon de restauration séparé, lit jacuzzi, vue imprenable sur l'océan Indien et transats privés réservés avec kiosque. Pour des vacances encore plus spéciales à l'île Maurice, notre Oceanview Pool Villa coche toutes les cases.\r\n
\r\n
D'une superficie de 250 mètres carrés, notre villa avec piscine avec vue sur l'océan est le cadre idéal pour votre escapade à l'île Maurice. La villa comprend un lit king size, un écran plat LCD avec une variété de chaînes internationales, un système de divertissement, une connexion Wi-Fi haut débit, un plateau/bouilloire, une machine à expresso, un minibar, un coin salon confortable, un bureau en bois et une salle de bain spacieuse et un dressing. Vous pouvez également profiter de votre dressing, de votre baignoire surdimensionnée, de votre douche à effet pluie et de votre douche extérieure.
"""
-active: true
-hotel: App\Entity\Hotels {#944}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#5531
-elements: array:1 [
0 => App\Entity\RoomPrices {#1803
-id: 2469
-title: "Villa Piscine Vue mer"
-room: App\Entity\Rooms {#1796}
-quantity: 8
-stayStartedAt: DateTimeImmutable @1742083200 {#1792
date: 2025-03-16 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1745107200 {#1793
date: 2025-04-20 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1794
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1795
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "945.00"
-singleOccupancy: "945.00"
-tripleOccupancy: "100.00"
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 100.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1797
#collection: Doctrine\Common\Collections\ArrayCollection {#1798
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1796}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1799
#collection: Doctrine\Common\Collections\ArrayCollection {#1800
-elements: array:20 [
0 => App\Entity\RoomCapacities {#3285
-id: 2960
-room: App\Entity\Rooms {#1796}
-adults: 2
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3286
-id: 2961
-room: App\Entity\Rooms {#1796}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3287
-id: 2962
-room: App\Entity\Rooms {#1796}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3288
-id: 2963
-room: App\Entity\Rooms {#1796}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3289
-id: 2964
-room: App\Entity\Rooms {#1796}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3290
-id: 2965
-room: App\Entity\Rooms {#1796}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3291
-id: 2966
-room: App\Entity\Rooms {#1796}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3292
-id: 2967
-room: App\Entity\Rooms {#1796}
-adults: 1
-teens: null
-children: 1
-babies: 2
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#3293
-id: 2968
-room: App\Entity\Rooms {#1796}
-adults: 1
-teens: null
-children: 2
-babies: 1
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#3294
-id: 2969
-room: App\Entity\Rooms {#1796}
-adults: 1
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#3295
-id: 2970
-room: App\Entity\Rooms {#1796}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#3296
-id: 2971
-room: App\Entity\Rooms {#1796}
-adults: 1
-teens: 2
-children: null
-babies: null
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#3297
-id: 2972
-room: App\Entity\Rooms {#1796}
-adults: 1
-teens: 1
-children: 1
-babies: 1
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#3298
-id: 2973
-room: App\Entity\Rooms {#1796}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
14 => App\Entity\RoomCapacities {#3299
-id: 2974
-room: App\Entity\Rooms {#1796}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
15 => App\Entity\RoomCapacities {#3300
-id: 2975
-room: App\Entity\Rooms {#1796}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
16 => App\Entity\RoomCapacities {#3301
-id: 2976
-room: App\Entity\Rooms {#1796}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
17 => App\Entity\RoomCapacities {#3302
-id: 2977
-room: App\Entity\Rooms {#1796}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
18 => App\Entity\RoomCapacities {#3303
-id: 2978
-room: App\Entity\Rooms {#1796}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
19 => App\Entity\RoomCapacities {#3304
-id: 2979
-room: App\Entity\Rooms {#1796}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:20 [ …20]
-owner: App\Entity\Rooms {#1796}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1790
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672837 {#1791
date: 2024-10-23 08:40:37.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "671748ab7574d441062092.jpg"
-gallery: App\Entity\Galleries {#1804
-id: 51
-hotel: null
-room: App\Entity\Rooms {#1796}
-images: Doctrine\ORM\PersistentCollection {#1805
#collection: Doctrine\Common\Collections\ArrayCollection {#1806
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1804}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Shanti villa piscine vue mer"
}
-mediaDirSlug: "8"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "villa-piscine-vue-mer"
}
6 => App\Entity\Rooms {#1813
-id: 7
-name: "Junior Suite Bord de plage"
-description: """
Nos Junior Suites bénéficient d'un emplacement en bord de mer au premier étage et bénéficient d'une vue panoramique imprenable sur l'océan Indien et les plages privées de Shanti Maurice. Naviguez avec les vues naturelles spectaculaires, les sons et les odeurs de l'océan.\r\n
\r\n
Nos Junior Suites comprennent une terrasse couverte en bois équipée de transats, un lit king-size ainsi qu'une salle de bain et dressing spacieux. D'une superficie de 65 m², nos Junior Suites offrent un hébergement spacieux et confortable et sont équipées d'un écran plat LCD avec une variété de chaînes internationales, d'un système de divertissement, d'une connexion Wi-Fi haut débit, d'un plateau/bouilloire, d'un Machine à expresso et minibar.
"""
-active: true
-hotel: App\Entity\Hotels {#944}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#5552
-elements: array:1 [
0 => App\Entity\RoomPrices {#1820
-id: 2458
-title: "Junior Suite Bord de plage"
-room: App\Entity\Rooms {#1813}
-quantity: 16
-stayStartedAt: DateTimeImmutable @1742083200 {#1809
date: 2025-03-16 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1745107200 {#1810
date: 2025-04-20 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1811
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1812
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "520.00"
-singleOccupancy: "520.00"
-tripleOccupancy: "100.00"
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 100.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1814
#collection: Doctrine\Common\Collections\ArrayCollection {#1815
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1813}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1816
#collection: Doctrine\Common\Collections\ArrayCollection {#1817
-elements: array:20 [
0 => App\Entity\RoomCapacities {#3226
-id: 2940
-room: App\Entity\Rooms {#1813}
-adults: 2
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3225
-id: 2941
-room: App\Entity\Rooms {#1813}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3224
-id: 2942
-room: App\Entity\Rooms {#1813}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3223
-id: 2943
-room: App\Entity\Rooms {#1813}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3247
-id: 2944
-room: App\Entity\Rooms {#1813}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3240
-id: 2945
-room: App\Entity\Rooms {#1813}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3245
-id: 2946
-room: App\Entity\Rooms {#1813}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3243
-id: 2947
-room: App\Entity\Rooms {#1813}
-adults: 1
-teens: null
-children: 1
-babies: 2
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#3244
-id: 2948
-room: App\Entity\Rooms {#1813}
-adults: 1
-teens: null
-children: 2
-babies: 1
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#3241
-id: 2949
-room: App\Entity\Rooms {#1813}
-adults: 1
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#3234
-id: 2950
-room: App\Entity\Rooms {#1813}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#3239
-id: 2951
-room: App\Entity\Rooms {#1813}
-adults: 1
-teens: 2
-children: null
-babies: null
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#3237
-id: 2952
-room: App\Entity\Rooms {#1813}
-adults: 1
-teens: 1
-children: 1
-babies: 1
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#3238
-id: 2953
-room: App\Entity\Rooms {#1813}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
14 => App\Entity\RoomCapacities {#3235
-id: 2954
-room: App\Entity\Rooms {#1813}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
15 => App\Entity\RoomCapacities {#3280
-id: 2955
-room: App\Entity\Rooms {#1813}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
16 => App\Entity\RoomCapacities {#3281
-id: 2956
-room: App\Entity\Rooms {#1813}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
17 => App\Entity\RoomCapacities {#3282
-id: 2957
-room: App\Entity\Rooms {#1813}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
18 => App\Entity\RoomCapacities {#3283
-id: 2958
-room: App\Entity\Rooms {#1813}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
19 => App\Entity\RoomCapacities {#3284
-id: 2959
-room: App\Entity\Rooms {#1813}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:20 [ …20]
-owner: App\Entity\Rooms {#1813}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1807
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672837 {#1808
date: 2024-10-23 08:40:37.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "67174e008055a762964354.jpg"
-gallery: App\Entity\Galleries {#1821
-id: 87
-hotel: null
-room: App\Entity\Rooms {#1813}
-images: Doctrine\ORM\PersistentCollection {#1822
#collection: Doctrine\Common\Collections\ArrayCollection {#1823
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1821}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Shanti suite junior bord de plage"
}
-mediaDirSlug: "7"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "junior-suite-bord-de-plage"
}
7 => App\Entity\Rooms {#1830
-id: 6
-name: "Junior Suite Bord de mer"
-description: """
Nos suites junior bénéficient d'un emplacement en bord de mer au rez-de-chaussée, équipées de transats privés réservés avec un kiosque sur la plage juste en face de la suite, à quelques pas du doux sable blanc de notre plage isolée. La suite est dotée d'une terrasse privée meublée de confortables transats en bois naturel et d'une douche extérieure rafraîchissante. Allongez-vous dans votre lit moelleux, regardez les arbres se balancer dans la brise océanique et écoutez les bruits de la mer.\r\n
\r\n
Nos Junior Suites aux dimensions généreuses mesurent 72 m² et sont équipées d'un écran plat LCD avec une variété de chaînes internationales, d'une connexion Wi-Fi haut débit gratuite, d'un plateau/bouilloire, d'une machine à expresso, d'une grande salle de bain et d'un dressing séparé avec un placard ouvert et coiffeuse.
"""
-active: true
-hotel: App\Entity\Hotels {#944}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#5573
-elements: array:1 [
0 => App\Entity\RoomPrices {#1837
-id: 2447
-title: "Junior Suite Bord de Mer"
-room: App\Entity\Rooms {#1830}
-quantity: 16
-stayStartedAt: DateTimeImmutable @1742083200 {#1826
date: 2025-03-16 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1745107200 {#1827
date: 2025-04-20 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1828
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1829
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "455.00"
-singleOccupancy: "455.00"
-tripleOccupancy: "100.00"
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 100.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1831
#collection: Doctrine\Common\Collections\ArrayCollection {#1832
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1830}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1833
#collection: Doctrine\Common\Collections\ArrayCollection {#1834
-elements: array:20 [
0 => App\Entity\RoomCapacities {#3276
-id: 2920
-room: App\Entity\Rooms {#1830}
-adults: 2
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3272
-id: 2921
-room: App\Entity\Rooms {#1830}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3221
-id: 2922
-room: App\Entity\Rooms {#1830}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3220
-id: 2923
-room: App\Entity\Rooms {#1830}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3251
-id: 2924
-room: App\Entity\Rooms {#1830}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3253
-id: 2925
-room: App\Entity\Rooms {#1830}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3246
-id: 2926
-room: App\Entity\Rooms {#1830}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3255
-id: 2927
-room: App\Entity\Rooms {#1830}
-adults: 1
-teens: null
-children: 1
-babies: 2
…1
}
8 => App\Entity\RoomCapacities {#3256 …7}
9 => App\Entity\RoomCapacities {#3252 …7}
10 => App\Entity\RoomCapacities {#3257 …7}
11 => App\Entity\RoomCapacities {#3242 …7}
12 => App\Entity\RoomCapacities {#3260 …7}
13 => App\Entity\RoomCapacities {#3211 …7}
14 => App\Entity\RoomCapacities {#3232 …7}
15 => App\Entity\RoomCapacities {#3231 …7}
16 => App\Entity\RoomCapacities {#3230 …7}
17 => App\Entity\RoomCapacities {#3229 …7}
18 => App\Entity\RoomCapacities {#3228 …7}
19 => App\Entity\RoomCapacities {#3227 …7}
]
}
#initialized: true
-snapshot: array:20 [ …20]
-owner: App\Entity\Rooms {#1830}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1824
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672837 {#1825
date: 2024-10-23 08:40:37.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "6667ec2169223829631382.png"
-gallery: App\Entity\Galleries {#1838
-id: 86
-hotel: null
-room: App\Entity\Rooms {#1830}
-images: Doctrine\ORM\PersistentCollection {#1839
#collection: Doctrine\Common\Collections\ArrayCollection {#1840
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1838}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Shanti suite junior bord de mer"
}
-mediaDirSlug: "6"
-lowerRoomPrice: null
-services: null
-slug: "junior-suite-bord-de-mer"
}
8 => App\Entity\Rooms {#1847
-id: 5
-name: "Junior Suite Vue lagon"
-description: """
Chacune de nos Junior Suites avec vue imprenable sur le lagon est décorée dans des tons terreux neutres pour détendre le corps et apaiser l'esprit. De grandes portes coulissantes s'ouvrent sur la terrasse pour laisser la brise marine fraîche entrer dans la pièce et révéler une vue inégalée sur le magnifique océan Indien.\r\n
\r\n
Nos Junior Suites aux dimensions généreuses mesurent 65 à 72 m² et sont équipées d'un écran plat LCD avec une variété de chaînes internationales, d'un système de divertissement, d'une connexion Wi-Fi haut débit, d'un plateau/bouilloire, d'une machine à expresso, d'un grand salle de bains et un dressing séparé avec un placard ouvert et une coiffeuse.
"""
-active: true
-hotel: App\Entity\Hotels {#944}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#5594
-elements: array:1 [
0 => App\Entity\RoomPrices {#1854
-id: 2436
-title: "Junior Suite Vue Lagon"
-room: App\Entity\Rooms {#1847}
-quantity: 4
-stayStartedAt: DateTimeImmutable @1742083200 {#1843 …1}
-stayEndedAt: DateTimeImmutable @1745107200 {#1844 …1}
-saleStartedAt: DateTimeImmutable @1725148800 {#1845 …1}
-saleEndedAt: DateTimeImmutable @1767181057 {#1846 …1}
-minNights: 1
-doubleOccupancy: "425.00"
-singleOccupancy: "425.00"
-tripleOccupancy: "100.00"
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 100.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1848
#collection: Doctrine\Common\Collections\ArrayCollection {#1849
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1847}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1850
#collection: Doctrine\Common\Collections\ArrayCollection {#1851
-elements: array:20 [
0 => App\Entity\RoomCapacities {#3145 …7}
1 => App\Entity\RoomCapacities {#3147 …7}
2 => App\Entity\RoomCapacities {#3148 …7}
3 => App\Entity\RoomCapacities {#3150 …7}
4 => App\Entity\RoomCapacities {#3151 …7}
5 => App\Entity\RoomCapacities {#3152 …7}
6 => App\Entity\RoomCapacities {#3153 …7}
7 => App\Entity\RoomCapacities {#3134 …7}
8 => App\Entity\RoomCapacities {#3056 …7}
9 => App\Entity\RoomCapacities {#3055 …7}
10 => App\Entity\RoomCapacities {#2480 …7}
11 => App\Entity\RoomCapacities {#2847 …7}
12 => App\Entity\RoomCapacities {#3048 …7}
13 => App\Entity\RoomCapacities {#3222 …7}
14 => App\Entity\RoomCapacities {#3258 …7}
15 => App\Entity\RoomCapacities {#3218 …7}
16 => App\Entity\RoomCapacities {#3219 …7}
17 => App\Entity\RoomCapacities {#3277 …7}
18 => App\Entity\RoomCapacities {#3217 …7}
19 => App\Entity\RoomCapacities {#3274 …7}
]
}
#initialized: true
-snapshot: array:20 [ …20]
-owner: App\Entity\Rooms {#1847}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1841
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1730279113 {#1842
date: 2024-10-30 09:05:13.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "6721be89e316a938909597.jpg"
-gallery: App\Entity\Galleries {#1855
-id: 85
-hotel: null
-room: App\Entity\Rooms {#1847}
-images: Doctrine\ORM\PersistentCollection {#1856
#collection: Doctrine\Common\Collections\ArrayCollection {#1857
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1855}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Shanti Junior suite vue lagon"
}
-mediaDirSlug: "5"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "junior-suite-vue-lagon"
}
]
}
#initialized: true
-snapshot: array:9 [ …9]
-owner: App\Entity\Hotels {#944}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#880 …}
-backRefFieldName: "hotel"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-address: "Route Côtiere Riviere Des Galets, St. Felix, Île Maurice"
-checkInTime: "15:00"
-checkOutTime: "12:00"
-babyAgeMax: "3"
-childAgeMax: "12"
-teenAgeMax: "18"
-extraCharges: Doctrine\ORM\PersistentCollection {#953
#collection: Doctrine\Common\Collections\ArrayCollection {#955
-elements: array:8 [
0 => App\Entity\ExtraCharges {#5646
-id: 26
-title: "Demi pension"
-description: null
-adultExtra: 80.0
-babyExtra: null
-childExtra: 40.0
-teenExtra: 80.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#944}
}
1 => App\Entity\ExtraCharges {#5643
-id: 28
-title: "Pension complète"
-description: null
-adultExtra: 130.0
-babyExtra: null
-childExtra: 65.0
-teenExtra: 130.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#944}
}
2 => App\Entity\ExtraCharges {#5645
-id: 30
-title: "Tout compris"
-description: null
-adultExtra: 190.0
-babyExtra: null
-childExtra: 85.0
-teenExtra: 190.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#944}
}
3 => App\Entity\ExtraCharges {#5654
-id: 32
-title: "Suppléments repas de Noël"
-description: null
-adultExtra: 310.0
-babyExtra: null
-childExtra: 155.0
-teenExtra: 310.0
-stayStartedAt: DateTimeImmutable @1734998400 {#5651
date: 2024-12-24 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1735084800 {#5653
date: 2024-12-25 00:00:00.0 UTC (+00:00)
}
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#944}
}
4 => App\Entity\ExtraCharges {#5657
-id: 34
-title: "Suppléments repas de Noêl : option HB/FB/AI"
-description: null
-adultExtra: 230.0
-babyExtra: null
-childExtra: 115.0
-teenExtra: 230.0
-stayStartedAt: DateTimeImmutable @1734998400 {#5655
date: 2024-12-24 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1735084800 {#5656
date: 2024-12-25 00:00:00.0 UTC (+00:00)
}
-isActive: false
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#944}
}
5 => App\Entity\ExtraCharges {#5660
-id: 37
-title: "Suppléments repas Nouvel An : B&B"
-description: null
-adultExtra: 490.0
-babyExtra: null
-childExtra: 245.0
-teenExtra: 490.0
-stayStartedAt: DateTimeImmutable @1735603200 {#5658
date: 2024-12-31 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1735689600 {#5659
date: 2025-01-01 00:00:00.0 UTC (+00:00)
}
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#944}
}
6 => App\Entity\ExtraCharges {#5663
-id: 39
-title: "Suppléments repas Nouvel An : option HB/FB/AI"
-description: null
-adultExtra: 410.0
-babyExtra: null
-childExtra: 205.0
-teenExtra: 410.0
-stayStartedAt: DateTimeImmutable @1735603200 {#5661
date: 2024-12-31 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1735689600 {#5662
date: 2025-01-01 00:00:00.0 UTC (+00:00)
}
-isActive: false
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#944}
}
7 => App\Entity\ExtraCharges {#5664
-id: 202
-title: "BASE - PETIT DEJEUNER"
-description: null
-adultExtra: 0.0
-babyExtra: 0.0
-childExtra: 0.0
-teenExtra: 0.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: true
-minNights: null
-hotel: App\Entity\Hotels {#944}
}
]
}
#initialized: true
-snapshot: array:8 [ …8]
-owner: App\Entity\Hotels {#944}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#876 …}
-backRefFieldName: "hotel"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-imageFile: null
-featuredImage: "66965e6e28574415362955.png"
-gallery: App\Entity\Galleries {#1101
-id: 48
-hotel: App\Entity\Hotels {#944}
-room: null
-images: Doctrine\ORM\PersistentCollection {#1107
#collection: Doctrine\Common\Collections\ArrayCollection {#1106
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1101}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Hotel Shanti"
}
-mediaDirSlug: null
-offers: Doctrine\Common\Collections\ArrayCollection {#6007}
-highlighted: false
-services: array:1 [
0 => ""
]
-hlStartAt: null
-hlEndAt: null
-slug: "shanti-maurice-resort-spa"
}
-description: null
-stayStartAt: DateTimeImmutable @1725148800 {#5754
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1761868800 {#5705
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1725148800 {#5753
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1761868800 {#5759
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-reference: null
-minNights: 14
-maxNights: null
-earlyBookingDays: null
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#5762
#collection: Doctrine\Common\Collections\ArrayCollection {#5763
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#5761}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1075 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 10
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#5764
#collection: Doctrine\Common\Collections\ArrayCollection {#5765
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#5761}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1081 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-offers: Doctrine\ORM\PersistentCollection {#5766
#collection: Doctrine\Common\Collections\ArrayCollection {#5767
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#5761}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1085 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#5768
#collection: Doctrine\Common\Collections\ArrayCollection {#5769
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#5761}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1087 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#5770
#collection: Doctrine\Common\Collections\ArrayCollection {#5771
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#5761}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1093 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-extrasDiscount: null
-priority: 2
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
1 => App\Entity\Offers {#5866
-id: 207
-title: "SPECIAL OFFER JOV-JLV"
-type: "Special"
-hotel: App\Entity\Hotels {#944}
-description: null
-stayStartAt: DateTimeImmutable @1735689600 {#5862
date: 2025-01-01 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1743379200 {#5863
date: 2025-03-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1731628800 {#5864
date: 2024-11-15 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1739577600 {#5865
date: 2025-02-15 00:00:00.0 UTC (+00:00)
}
-reference: "SPECIAL OFFER"
-minNights: 1
-maxNights: null
-earlyBookingDays: null
-applyToAllRooms: false
-selectedRooms: Doctrine\ORM\PersistentCollection {#5867
#collection: Doctrine\Common\Collections\ArrayCollection {#5868
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#5866}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1075 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 10
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#5869
#collection: Doctrine\Common\Collections\ArrayCollection {#5870
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#5866}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1081 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-offers: Doctrine\ORM\PersistentCollection {#5871
#collection: Doctrine\Common\Collections\ArrayCollection {#5872
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#5866}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1085 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#5873
#collection: Doctrine\Common\Collections\ArrayCollection {#5874
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#5866}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1087 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#5875
#collection: Doctrine\Common\Collections\ArrayCollection {#5876
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#5866}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1093 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-extrasDiscount: null
-priority: 1
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
2 => App\Entity\Offers {#5881
-id: 208
-title: "SPECIAL OFFER JOF-JBF"
-type: "Special"
-hotel: App\Entity\Hotels {#944}
-description: null
-stayStartAt: DateTimeImmutable @1735689600 {#5877
date: 2025-01-01 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1743379200 {#5878
date: 2025-03-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1731628800 {#5879
date: 2024-11-15 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1739577600 {#5880
date: 2025-02-15 00:00:00.0 UTC (+00:00)
}
-reference: "SPECIAL OFFER"
-minNights: 1
-maxNights: null
-earlyBookingDays: null
-applyToAllRooms: false
-selectedRooms: Doctrine\ORM\PersistentCollection {#5882
#collection: Doctrine\Common\Collections\ArrayCollection {#5883
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#5881}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1075 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 20
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#5884
#collection: Doctrine\Common\Collections\ArrayCollection {#5885
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#5881}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1081 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-offers: Doctrine\ORM\PersistentCollection {#5886
#collection: Doctrine\Common\Collections\ArrayCollection {#5887
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#5881}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1085 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#5888
#collection: Doctrine\Common\Collections\ArrayCollection {#5889
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#5881}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1087 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#5890
#collection: Doctrine\Common\Collections\ArrayCollection {#5891
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#5881}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1093 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-extrasDiscount: null
-priority: 1
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
3 => App\Entity\Offers {#5896
-id: 209
-title: "SPECIAL OFFER OVP-BSV"
-type: "Special"
-hotel: App\Entity\Hotels {#944}
-description: null
-stayStartAt: DateTimeImmutable @1735689600 {#5892
date: 2025-01-01 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1743379200 {#5893
date: 2025-03-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1731628800 {#5894
date: 2024-11-15 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1739577600 {#5895
date: 2025-02-15 00:00:00.0 UTC (+00:00)
}
-reference: "SPECIAL OFFER"
-minNights: 1
-maxNights: null
-earlyBookingDays: null
-applyToAllRooms: false
-selectedRooms: Doctrine\ORM\PersistentCollection {#5897
#collection: Doctrine\Common\Collections\ArrayCollection {#5898
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#5896}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1075 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 25
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#5899
#collection: Doctrine\Common\Collections\ArrayCollection {#5900
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#5896}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1081 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-offers: Doctrine\ORM\PersistentCollection {#5901
#collection: Doctrine\Common\Collections\ArrayCollection {#5902
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#5896}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1085 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#5903
#collection: Doctrine\Common\Collections\ArrayCollection {#5904
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#5896}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1087 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#5905
#collection: Doctrine\Common\Collections\ArrayCollection {#5906
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#5896}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1093 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-extrasDiscount: null
-priority: 1
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
4 => App\Entity\Offers {#5911
-id: 210
-title: "SPECIAL OFFER VSV-PSU"
-type: "Special"
-hotel: App\Entity\Hotels {#944}
-description: null
-stayStartAt: DateTimeImmutable @1735689600 {#5907
date: 2025-01-01 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1743379200 {#5908
date: 2025-03-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1731628800 {#5909
date: 2024-11-15 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1739577600 {#5910
date: 2025-02-15 00:00:00.0 UTC (+00:00)
}
-reference: "SPECIAL OFFER"
-minNights: 1
-maxNights: null
-earlyBookingDays: null
-applyToAllRooms: false
-selectedRooms: Doctrine\ORM\PersistentCollection {#5912
#collection: Doctrine\Common\Collections\ArrayCollection {#5913
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#5911}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1075 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 30
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#5914
#collection: Doctrine\Common\Collections\ArrayCollection {#5915
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#5911}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1081 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-offers: Doctrine\ORM\PersistentCollection {#5916
#collection: Doctrine\Common\Collections\ArrayCollection {#5917
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#5911}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1085 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#5918
#collection: Doctrine\Common\Collections\ArrayCollection {#5919
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#5911}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1087 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#5920
#collection: Doctrine\Common\Collections\ArrayCollection {#5921
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#5911}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1093 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-extrasDiscount: null
-priority: 1
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
]
}
1 in
PromotionDTO.php
line 556:
if ($offer_min_nights) {
if($stay_nights < $offer_min_nights){
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle(), 'Min nights failure.');
}
return $this;
}
"119 - LONG STAY OFFER"
2 in
PromotionDTO.php
line 556:
if ($offer_min_nights) {
if($stay_nights < $offer_min_nights){
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle(), 'Min nights failure.');
}
return $this;
}
"Min nights failure."
1 in
PromotionDTO.php
line 522:
if ($offer_bookingStartAt >= $currentBookingDate || $currentBookingDate >= $offer_bookingEndAt)
{
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle(), 'booking dates failure.');
}
return $this;
}
"207 - SPECIAL OFFER JOV-JLV"
2 in
PromotionDTO.php
line 522:
if ($offer_bookingStartAt >= $currentBookingDate || $currentBookingDate >= $offer_bookingEndAt)
{
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle(), 'booking dates failure.');
}
return $this;
}
"booking dates failure."
1 in
PromotionDTO.php
line 522:
if ($offer_bookingStartAt >= $currentBookingDate || $currentBookingDate >= $offer_bookingEndAt)
{
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle(), 'booking dates failure.');
}
return $this;
}
"208 - SPECIAL OFFER JOF-JBF"
2 in
PromotionDTO.php
line 522:
if ($offer_bookingStartAt >= $currentBookingDate || $currentBookingDate >= $offer_bookingEndAt)
{
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle(), 'booking dates failure.');
}
return $this;
}
"booking dates failure."
1 in
PromotionDTO.php
line 522:
if ($offer_bookingStartAt >= $currentBookingDate || $currentBookingDate >= $offer_bookingEndAt)
{
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle(), 'booking dates failure.');
}
return $this;
}
"209 - SPECIAL OFFER OVP-BSV"
2 in
PromotionDTO.php
line 522:
if ($offer_bookingStartAt >= $currentBookingDate || $currentBookingDate >= $offer_bookingEndAt)
{
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle(), 'booking dates failure.');
}
return $this;
}
"booking dates failure."
1 in
PromotionDTO.php
line 522:
if ($offer_bookingStartAt >= $currentBookingDate || $currentBookingDate >= $offer_bookingEndAt)
{
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle(), 'booking dates failure.');
}
return $this;
}
"210 - SPECIAL OFFER VSV-PSU"
2 in
PromotionDTO.php
line 522:
if ($offer_bookingStartAt >= $currentBookingDate || $currentBookingDate >= $offer_bookingEndAt)
{
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle(), 'booking dates failure.');
}
return $this;
}
"booking dates failure."
1 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
"Step 1. Offres valides : "
2 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
null
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Anantara Iko Mauritius Resort & Villas - Chambre : #14 - Chambre jardin Deluxe has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#6613
+rpId: 1376
+adultsPrice: 490
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 490
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 490
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 490
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 490
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Anantara Iko Mauritius Resort & Villas - Chambre : #15 - Chambre Deluxe Acces plage has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#6634
+rpId: 1351
+adultsPrice: 550
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 550
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 550
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 550
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 550
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Anantara Iko Mauritius Resort & Villas - Chambre : #16 - Chambre Deluxe Vue mer has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#6655
+rpId: 1385
+adultsPrice: 600
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 600
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 600
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 600
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 600
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Anantara Iko Mauritius Resort & Villas - Chambre : #18 - Suite Vue jardin has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#6676
+rpId: 1392
+adultsPrice: 795
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 795
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 795
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 795
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 795
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Anantara Iko Mauritius Resort & Villas - Chambre : #19 - Suite Vue mer has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#6697
+rpId: 1399
+adultsPrice: 985
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 985
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 985
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 985
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 985
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Anantara Iko Mauritius Resort & Villas - Chambre : #13 - Premier Vue jardin has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#6718
+rpId: 2133
+adultsPrice: 455
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 455
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 455
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 455
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 455
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
"Update Stay Rooms - Chambers Prices"
2 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
array:1 [
0 => array:6 [
0 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
"room_id" => 14
"room_picture" => "/uploads/rooms/14/6733551f336e7545940482.jpg"
"room_name" => "Chambre jardin Deluxe"
"room_slug" => "chambre-jardin-deluxe"
"room_description" => "Plongez au cœur de l’île Maurice sauvage et faites comme chez vous. Choisissez une chambre de luxe au rez-de-chaussée et profitez du mélange parfait de confort moderne et de beauté naturelle. Reposez-vous dans votre grand lit confortable. Rafraîchissez-vous dans votre douche à effet pluie ou votre baignoire de luxe après une journée d'exploration"
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1376
"adult_amount" => 1960
"children_amount" => 0
"basis_amount" => 1960
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 490
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 490
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 490
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 490
"kids_price" => 0
]
]
]
]
1 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 15
"room_picture" => "/uploads/rooms/15/666ae23130e35538268049.jpg"
"room_name" => "Chambre Deluxe Acces plage"
"room_slug" => "chambre-deluxe-acces-plage"
"room_description" => "Situées à seulement 100 m de la plage, nos chambres Deluxe accès plage vous invitent à vous immerger dans la beauté des environs tout en profitant d'une vue pittoresque sur l'océan. Après une journée d'aventures sur l'île, détendez-vous dans le luxe ou sur votre terrasse privée. Adoptez le refuge parfait pour votre escapade à l’île Maurice dans ces chambres au design élégant"
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1351
"adult_amount" => 2200
"children_amount" => 0
"basis_amount" => 2200
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 550
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 550
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 550
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 550
"kids_price" => 0
]
]
]
]
2 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 16
"room_picture" => "/uploads/rooms/16/666ae2aa9a54d631388949.jpg"
"room_name" => "Chambre Deluxe Vue mer"
"room_slug" => "chambre-deluxe-vue-mer"
"room_description" => "Montez sur votre balcon privé et remplissez vos poumons de bouffées vivifiantes d'air pur de l'Antarctique qui dérive des eaux chaudes de l'océan Indien. Choisissez une vue directe sur l'océan depuis votre luxueuse chambre située au premier étage ou encadrez les eaux au-delà de la flore tropicale aux portes de votre terrasse d'accès au jardin. Trouvez votre paix dans le paradis naturel du parc marin de Blue Bay."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1385
"adult_amount" => 2400
"children_amount" => 0
"basis_amount" => 2400
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 600
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 600
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 600
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 600
"kids_price" => 0
]
]
]
]
3 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 18
"room_picture" => "/uploads/rooms/18/666ae30523b50673512965.jpg"
"room_name" => "Suite Vue jardin"
"room_slug" => "suite-vue-jardin"
"room_description" => "Retirez-vous de votre balcon privé et de ses magnifiques vues tropicales dans le confort de votre chambre principale avec salle de bains privative. Étendez-vous sur de somptueux lits king-size conçus pour vous reposer après des journées passées à admirer la splendide nature environnante. Étendez-vous et profitez de la commodité de votre salon et salle à manger séparés. Votre escapade idéale dans un endroit parfait."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1392
"adult_amount" => 3180
"children_amount" => 0
"basis_amount" => 3180
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 795
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 795
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 795
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 795
"kids_price" => 0
]
]
]
]
4 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 19
"room_picture" => "/uploads/rooms/19/666ae3523b169404696346.jpg"
"room_name" => "Suite Vue mer"
"room_slug" => "suite-vue-mer"
"room_description" => "Considérez le bleu frais de l’océan depuis la chaleur de votre suite de luxe. Écoutez des sons marins apaisants tout en profitant de la couleur et du parfum du terrain de jeu naturel au-delà de votre balcon privé. Trouvez l'endroit idéal pour apprécier ce coin idyllique de la plus belle île balnéaire de l'océan Indien. Arrivez pour le confort, restez au paradis, revenez inspiré."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1399
"adult_amount" => 3940
"children_amount" => 0
"basis_amount" => 3940
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 985
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 985
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 985
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 985
"kids_price" => 0
]
]
]
]
5 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 13
"room_picture" => "/uploads/rooms/13/666ae1d3bf7ae569900762.jpg"
"room_name" => "Premier Vue jardin"
"room_slug" => "premier-vue-jardin"
"room_description" => "Invitez l'extérieur depuis votre espace confortable avec vue sur le jardin et doté de commodités de vacances modernes. Anantara vous invite à choisir une chambre spacieuse et contemporaine au premier ou au deuxième étage et à profiter d'une vue complète sur le complexe. Réclamez votre espace et prenez le temps d'apprécier le monde naturel qui vous"
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2133
"adult_amount" => 1820
"children_amount" => 0
"basis_amount" => 1820
"mandatoryExtraId" => null
"default_extra_label" => "Petit-déjeuner"
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 455
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 455
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 455
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 455
"kids_price" => 0
]
]
]
]
]
]
1 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
"Update Stay Rooms results"
2 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
array:6 [
0 => App\DTO\RoomStayDTO {#5644
-marginRate: 20
-id: 14
-name: "Chambre jardin Deluxe"
-slug: "chambre-jardin-deluxe"
-picture: "/uploads/rooms/14/6733551f336e7545940482.jpg"
-description: "Plongez au cœur de l’île Maurice sauvage et faites comme chez vous. Choisissez une chambre de luxe au rez-de-chaussée et profitez du mélange parfait de confort moderne et de beauté naturelle. Reposez-vous dans votre grand lit confortable. Rafraîchissez-vous dans votre douche à effet pluie ou votre baignoire de luxe après une journée d'exploration"
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 196
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 490
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 490
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 490
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 490
"kids_price" => 0
]
]
"amount" => 1960
]
]
-totalRoomAmount: 1960.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#6738
-marginRate: 20
+extraId: 196
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1960.0
+totalStayAmountWoDiscount: 1960.0
+totalStayAmount: 1960.0
+finalAmountWoDiscount: 2352.0
+finalAmount: 2352.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#6741
-marginRate: 20
+extraId: 5
+name: "Supplément repas Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 60
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 240
+kidsExtrasAmount: 0
+stayExtrasAmount: 240
+stayRoomAmount: 1960.0
+totalStayAmountWoDiscount: 2200.0
+totalStayAmount: 2200.0
+finalAmountWoDiscount: 2640.0
+finalAmount: 2640.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#6747
-marginRate: 20
+extraId: 4
+name: "Supplément repas Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 90
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 360
+kidsExtrasAmount: 0
+stayExtrasAmount: 360
+stayRoomAmount: 1960.0
+totalStayAmountWoDiscount: 2320.0
+totalStayAmount: 2320.0
+finalAmountWoDiscount: 2784.0
+finalAmount: 2784.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#6748
-marginRate: 20
+extraId: 6
+name: "Supplément repas Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 170
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 680
+kidsExtrasAmount: 0
+stayExtrasAmount: 680
+stayRoomAmount: 1960.0
+totalStayAmountWoDiscount: 2640.0
+totalStayAmount: 2640.0
+finalAmountWoDiscount: 3168.0
+finalAmount: 3168.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
1 => App\DTO\RoomStayDTO {#6693
-marginRate: 20
-id: 15
-name: "Chambre Deluxe Acces plage"
-slug: "chambre-deluxe-acces-plage"
-picture: "/uploads/rooms/15/666ae23130e35538268049.jpg"
-description: "Situées à seulement 100 m de la plage, nos chambres Deluxe accès plage vous invitent à vous immerger dans la beauté des environs tout en profitant d'une vue pittoresque sur l'océan. Après une journée d'aventures sur l'île, détendez-vous dans le luxe ou sur votre terrasse privée. Adoptez le refuge parfait pour votre escapade à l’île Maurice dans ces chambres au design élégant"
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 196
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 550
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 550
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 550
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 550
"kids_price" => 0
]
]
"amount" => 2200
]
]
-totalRoomAmount: 2200.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#6749
-marginRate: 20
+extraId: 196
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2200.0
+totalStayAmountWoDiscount: 2200.0
+totalStayAmount: 2200.0
+finalAmountWoDiscount: 2640.0
+finalAmount: 2640.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#6750
-marginRate: 20
+extraId: 5
+name: "Supplément repas Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 60
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 240
+kidsExtrasAmount: 0
+stayExtrasAmount: 240
+stayRoomAmount: 2200.0
+totalStayAmountWoDiscount: 2440.0
+totalStayAmount: 2440.0
+finalAmountWoDiscount: 2928.0
+finalAmount: 2928.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#6751
-marginRate: 20
+extraId: 4
+name: "Supplément repas Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 90
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 360
+kidsExtrasAmount: 0
+stayExtrasAmount: 360
+stayRoomAmount: 2200.0
+totalStayAmountWoDiscount: 2560.0
+totalStayAmount: 2560.0
+finalAmountWoDiscount: 3072.0
+finalAmount: 3072.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#6752
-marginRate: 20
+extraId: 6
+name: "Supplément repas Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 170
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 680
+kidsExtrasAmount: 0
+stayExtrasAmount: 680
+stayRoomAmount: 2200.0
+totalStayAmountWoDiscount: 2880.0
+totalStayAmount: 2880.0
+finalAmountWoDiscount: 3456.0
+finalAmount: 3456.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
2 => App\DTO\RoomStayDTO {#6714
-marginRate: 20
-id: 16
-name: "Chambre Deluxe Vue mer"
-slug: "chambre-deluxe-vue-mer"
-picture: "/uploads/rooms/16/666ae2aa9a54d631388949.jpg"
-description: "Montez sur votre balcon privé et remplissez vos poumons de bouffées vivifiantes d'air pur de l'Antarctique qui dérive des eaux chaudes de l'océan Indien. Choisissez une vue directe sur l'océan depuis votre luxueuse chambre située au premier étage ou encadrez les eaux au-delà de la flore tropicale aux portes de votre terrasse d'accès au jardin. Trouvez votre paix dans le paradis naturel du parc marin de Blue Bay."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 196
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 600
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 600
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 600
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 600
"kids_price" => 0
]
]
"amount" => 2400
]
]
-totalRoomAmount: 2400.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#6753
-marginRate: 20
+extraId: 196
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2400.0
+totalStayAmountWoDiscount: 2400.0
+totalStayAmount: 2400.0
+finalAmountWoDiscount: 2880.0
+finalAmount: 2880.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#6754
-marginRate: 20
+extraId: 5
+name: "Supplément repas Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 60
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 240
+kidsExtrasAmount: 0
+stayExtrasAmount: 240
+stayRoomAmount: 2400.0
+totalStayAmountWoDiscount: 2640.0
+totalStayAmount: 2640.0
+finalAmountWoDiscount: 3168.0
+finalAmount: 3168.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#6755
-marginRate: 20
+extraId: 4
+name: "Supplément repas Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 90
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 360
+kidsExtrasAmount: 0
+stayExtrasAmount: 360
+stayRoomAmount: 2400.0
+totalStayAmountWoDiscount: 2760.0
+totalStayAmount: 2760.0
+finalAmountWoDiscount: 3312.0
+finalAmount: 3312.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#6756
-marginRate: 20
+extraId: 6
+name: "Supplément repas Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 170
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 680
+kidsExtrasAmount: 0
+stayExtrasAmount: 680
+stayRoomAmount: 2400.0
+totalStayAmountWoDiscount: 3080.0
+totalStayAmount: 3080.0
+finalAmountWoDiscount: 3696.0
+finalAmount: 3696.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
3 => App\DTO\RoomStayDTO {#6713
-marginRate: 20
-id: 18
-name: "Suite Vue jardin"
-slug: "suite-vue-jardin"
-picture: "/uploads/rooms/18/666ae30523b50673512965.jpg"
-description: "Retirez-vous de votre balcon privé et de ses magnifiques vues tropicales dans le confort de votre chambre principale avec salle de bains privative. Étendez-vous sur de somptueux lits king-size conçus pour vous reposer après des journées passées à admirer la splendide nature environnante. Étendez-vous et profitez de la commodité de votre salon et salle à manger séparés. Votre escapade idéale dans un endroit parfait."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 196
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 795
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 795
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 795
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 795
"kids_price" => 0
]
]
"amount" => 3180
]
]
-totalRoomAmount: 3180.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#6757
-marginRate: 20
+extraId: 196
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 3180.0
+totalStayAmountWoDiscount: 3180.0
+totalStayAmount: 3180.0
+finalAmountWoDiscount: 3816.0
+finalAmount: 3816.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#6758
-marginRate: 20
+extraId: 5
+name: "Supplément repas Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 60
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 240
+kidsExtrasAmount: 0
+stayExtrasAmount: 240
+stayRoomAmount: 3180.0
+totalStayAmountWoDiscount: 3420.0
+totalStayAmount: 3420.0
+finalAmountWoDiscount: 4104.0
+finalAmount: 4104.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#6759
-marginRate: 20
+extraId: 4
+name: "Supplément repas Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 90
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 360
+kidsExtrasAmount: 0
+stayExtrasAmount: 360
+stayRoomAmount: 3180.0
+totalStayAmountWoDiscount: 3540.0
+totalStayAmount: 3540.0
+finalAmountWoDiscount: 4248.0
+finalAmount: 4248.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#6760
-marginRate: 20
+extraId: 6
+name: "Supplément repas Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 170
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 680
+kidsExtrasAmount: 0
+stayExtrasAmount: 680
+stayRoomAmount: 3180.0
+totalStayAmountWoDiscount: 3860.0
+totalStayAmount: 3860.0
+finalAmountWoDiscount: 4632.0
+finalAmount: 4632.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
4 => App\DTO\RoomStayDTO {#6691
-marginRate: 20
-id: 19
-name: "Suite Vue mer"
-slug: "suite-vue-mer"
-picture: "/uploads/rooms/19/666ae3523b169404696346.jpg"
-description: "Considérez le bleu frais de l’océan depuis la chaleur de votre suite de luxe. Écoutez des sons marins apaisants tout en profitant de la couleur et du parfum du terrain de jeu naturel au-delà de votre balcon privé. Trouvez l'endroit idéal pour apprécier ce coin idyllique de la plus belle île balnéaire de l'océan Indien. Arrivez pour le confort, restez au paradis, revenez inspiré."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 196
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 985
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 985
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 985
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 985
"kids_price" => 0
]
]
"amount" => 3940
]
]
-totalRoomAmount: 3940.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#6761
-marginRate: 20
+extraId: 196
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 3940.0
+totalStayAmountWoDiscount: 3940.0
+totalStayAmount: 3940.0
+finalAmountWoDiscount: 4728.0
+finalAmount: 4728.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#6762
-marginRate: 20
+extraId: 5
+name: "Supplément repas Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 60
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 240
+kidsExtrasAmount: 0
+stayExtrasAmount: 240
+stayRoomAmount: 3940.0
+totalStayAmountWoDiscount: 4180.0
+totalStayAmount: 4180.0
+finalAmountWoDiscount: 5016.0
+finalAmount: 5016.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#6763
-marginRate: 20
+extraId: 4
+name: "Supplément repas Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 90
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 360
+kidsExtrasAmount: 0
+stayExtrasAmount: 360
+stayRoomAmount: 3940.0
+totalStayAmountWoDiscount: 4300.0
+totalStayAmount: 4300.0
+finalAmountWoDiscount: 5160.0
+finalAmount: 5160.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#6764
-marginRate: 20
+extraId: 6
+name: "Supplément repas Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 170
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 680
+kidsExtrasAmount: 0
+stayExtrasAmount: 680
+stayRoomAmount: 3940.0
+totalStayAmountWoDiscount: 4620.0
+totalStayAmount: 4620.0
+finalAmountWoDiscount: 5544.0
+finalAmount: 5544.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
5 => App\DTO\RoomStayDTO {#6732
-marginRate: 20
-id: 13
-name: "Premier Vue jardin"
-slug: "premier-vue-jardin"
-picture: "/uploads/rooms/13/666ae1d3bf7ae569900762.jpg"
-description: "Invitez l'extérieur depuis votre espace confortable avec vue sur le jardin et doté de commodités de vacances modernes. Anantara vous invite à choisir une chambre spacieuse et contemporaine au premier ou au deuxième étage et à profiter d'une vue complète sur le complexe. Réclamez votre espace et prenez le temps d'apprécier le monde naturel qui vous"
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: "Petit-déjeuner"
-mandatoryExtraId: 196
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 455
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 455
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 455
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 455
"kids_price" => 0
]
]
"amount" => 1820
]
]
-totalRoomAmount: 1820.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#6765
-marginRate: 20
+extraId: 196
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1820.0
+totalStayAmountWoDiscount: 1820.0
+totalStayAmount: 1820.0
+finalAmountWoDiscount: 2184.0
+finalAmount: 2184.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#6766
-marginRate: 20
+extraId: 5
+name: "Supplément repas Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 60
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 240
+kidsExtrasAmount: 0
+stayExtrasAmount: 240
+stayRoomAmount: 1820.0
+totalStayAmountWoDiscount: 2060.0
+totalStayAmount: 2060.0
+finalAmountWoDiscount: 2472.0
+finalAmount: 2472.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#6767
-marginRate: 20
+extraId: 4
+name: "Supplément repas Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 90
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 360
+kidsExtrasAmount: 0
+stayExtrasAmount: 360
+stayRoomAmount: 1820.0
+totalStayAmountWoDiscount: 2180.0
+totalStayAmount: 2180.0
+finalAmountWoDiscount: 2616.0
+finalAmount: 2616.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#6768
-marginRate: 20
+extraId: 6
+name: "Supplément repas Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 170
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 680
+kidsExtrasAmount: 0
+stayExtrasAmount: 680
+stayRoomAmount: 1820.0
+totalStayAmountWoDiscount: 2500.0
+totalStayAmount: 2500.0
+finalAmountWoDiscount: 3000.0
+finalAmount: 3000.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
]
1 in
RoomStayCalculation.php
line 274:
{
$offers_eligibled = [];
if ($this->debug) {
dump('All available offers of the hotel', $offers);
}
foreach ($offers as $key => $offer) {
"All available offers of the hotel"
1 in
PromotionDTO.php
line 546:
// if booking not respect the interval skip this offer - format('%a') return a string of the diff days, need to convert to integer value
if (intval($booking_interval->format('%a')) < $offer_earlybookingDays) {
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle() . '(nb jours: ' . $offer_earlybookingDays . ')', 'Early booking date interval failure. (début séjour dans '.$booking_interval->format('%a').' jours.)');
}
return $this;
}
"1 - Early Booking 30(nb jours: 30)"
2 in
PromotionDTO.php
line 546:
// if booking not respect the interval skip this offer - format('%a') return a string of the diff days, need to convert to integer value
if (intval($booking_interval->format('%a')) < $offer_earlybookingDays) {
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle() . '(nb jours: ' . $offer_earlybookingDays . ')', 'Early booking date interval failure. (début séjour dans '.$booking_interval->format('%a').' jours.)');
}
return $this;
}
"Early booking date interval failure. (début séjour dans 27 jours.)"
1 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
"Step 1. Offres valides : "
2 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
array:2 [
0 => App\DTO\PromotionDTO {#7035
-debug: true
+id: 255
+title: "Premium partner offer"
+description: null
+type: "Special"
+reference: "Premium partner offer"
+from: DateTimeImmutable @1737936000 {#6885
date: 2025-01-27 00:00:00.0 UTC (+00:00)
}
+to: DateTimeImmutable @1761868800 {#6886
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
+earlyBookingDays: null
+minNights: null
+maxNights: null
+discountRate: 40
+discountFamilyRates: []
+combinableRate: null
+priority: 1
+extrasDiscountRate: null
+isAllRooms: false
+isCombinable: false
+selectedRoomsIDs: array:6 [
0 => 13
1 => 14
2 => 15
3 => 16
4 => 18
5 => 19
]
+selectedExtrasIDs: []
+selectedOffersIDs: []
+selectedExtrasDiscountIDs: []
}
1 => App\DTO\PromotionDTO {#6977
-debug: true
+id: 15
+title: "ANANTARA"
+description: "https://pro.airvoyages.fr/wp-content/uploads/mru/promo/ANANTARA%20PROMO%20BOOK%20AVANT%2018JUILLET%20STAY%2005JUIN-31OCT.pdf"
+type: "LongStay"
+reference: null
+from: DateTimeImmutable @1717545600 {#6825
date: 2024-06-05 00:00:00.0 UTC (+00:00)
}
+to: DateTimeImmutable @1761868800 {#6826
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
+earlyBookingDays: null
+minNights: 4
+maxNights: 4
+discountRate: 20
+discountFamilyRates: []
+combinableRate: null
+priority: 2
+extrasDiscountRate: null
+isAllRooms: true
+isCombinable: false
+selectedRoomsIDs: []
+selectedExtrasIDs: []
+selectedOffersIDs: []
+selectedExtrasDiscountIDs: []
}
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : LUX Belle Mare - Chambre : #159 - Suite LUX has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#7280
+rpId: 2062
+adultsPrice: 650
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 650
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 650
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 650
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 650
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : LUX Belle Mare - Chambre : #158 - Suite Junior "Vue Plage" has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#7348
+rpId: 2052
+adultsPrice: 570
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : LUX Belle Mare - Chambre : #157 - Suite Junior "Vue Piscine" has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#7369
+rpId: 2042
+adultsPrice: 520
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : LUX Belle Mare - Chambre : #156 - Suite Junior "Bien-Être" has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#7390
+rpId: 2032
+adultsPrice: 480
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : LUX Belle Mare - Chambre : #155 - Suite Junior has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#7411
+rpId: 2021
+adultsPrice: 440
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 440
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 440
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 440
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 440
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
"Update Stay Rooms - Chambers Prices"
2 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
array:1 [
0 => array:5 [
0 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
"room_id" => 159
"room_picture" => "/uploads/rooms/159/67109ee09caa6294887379.jpeg"
"room_name" => "Suite LUX"
"room_slug" => "suite-lux"
"room_description" => "Un refuge intime et romantique pour deux sous les tropiques. La salle de bains tout en blanc est chic et tranquille. Le coin salon, drapé de lin pur, présente un spacieux canapé cocon pour deux. Il y a un coin bar avec un chariot à cocktails - emportez votre verre dans l'espace cabane extérieur, et détendez- vous. A l’extérieur, le lit balançoire donnant sur la plage, est parfait pour faire la sieste. La salle de bain spacieuse dispose d'une baignoire surdimensionnée pour deux. Et le dressing est surprenant de beauté avec son magnifique papier peint personnalisé inspiré des coraux."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2062
"adult_amount" => 2600
"children_amount" => 0
"basis_amount" => 2600
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 650
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 650
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 650
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 650
"kids_price" => 0
]
]
]
]
1 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 158
"room_picture" => "/uploads/rooms/158/6667ee9c44f48382009249.jpg"
"room_name" => "Suite Junior "Vue Plage""
"room_slug" => "suite-junior-vue-plage"
"room_description" => "Situées au rez-de-chaussée, au premier et au deuxième étage, nos Junior Suites Avec Vue Plage, offrent une vue magnifique sur la baie idyllique de Belle Mare. Les espaces intérieurs sont chics et sereins, imprégnés de nuances de sable avec des touches de couleur corail et jaune citron. Ces suites sont parfaites pour les couples ou les familles avec de jeunes enfants. La terrasse dispose d'un lit de jour pour se prélasser, tandis que le coin ‘bar’ est une version revisitée du mini bar traditionnel."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2052
"adult_amount" => 2280
"children_amount" => 0
"basis_amount" => 2280
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
]
]
]
2 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 157
"room_picture" => "/uploads/rooms/157/6667ee662e922992732751.jpg"
"room_name" => "Suite Junior "Vue Piscine""
"room_slug" => "suite-junior-vue-piscine"
"room_description" => "Idéalement situées au cœur de l'hôtel, orientées vers la piscine principale, ces suites sont parfaites pour les familles avec de jeunes enfants. Parées de nuances sable, corail et jaune citron, avec vue sur la piscine, elles sont propices à la détente tout en étant à proximité des lieux favoris des enfants et des parents ! La salle de bains tout en blanc est équipée d'une magnifique baignoire et d'une grande douche."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2042
"adult_amount" => 2080
"children_amount" => 0
"basis_amount" => 2080
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
]
]
]
3 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 156
"room_picture" => "/uploads/rooms/156/6667ee1740786040602908.jpg"
"room_name" => "Suite Junior "Bien-Être""
"room_slug" => "belle-mare-suite-junior-bien-etre"
"room_description" => "Conçue pour les couples ou les voyageurs solo amoureux du bien- être, cette suite junior offre de nombreux équipements de bien-être soigneusement sélectionnés, telles qu'un tapis de yoga, des blocs d'exercice mais inclut aussi une séance de coaching à la salle de sport, des offres au spa... Cette ambiance légère et décontractée, associée aux éléments de bien-être, est un véritable must pour les voyageurs en quête d'équilibre. Le coin ‘bar’ de la chambre, notre réinterprétation du mini-bar classique, est rempli de collations saines, tandis que la salle de bain est dotée d’une grande baignoire et d’une douche à l’italienne - parfait pour se détendre."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2032
"adult_amount" => 1920
"children_amount" => 0
"basis_amount" => 1920
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
]
]
]
4 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 155
"room_picture" => "/uploads/rooms/155/67109eb4260bc294654031.jpeg"
"room_name" => "Suite Junior"
"room_slug" => "belle-mare-suite-junior"
"room_description" => "Que vous optiez pour le rez-de-chaussée, le premier ou le deuxième étage, votre chambre présente une palette de couleurs apaisantes, un mélange de tons sable et de touches corail et jaune citron. L'intérieur dévoile des panneaux en bois blanchis, des sièges en corde tissée et des tables moulées à partir de sable local recyclé, offrant une atmosphère sereine et accueillante. Sur la terrasse de la suite ‘Cabane’, vous trouverez une banquette confortable pour faire la sieste. Vous découvrirez aussi dans votre chambre le coin ‘bar’, notre version revisitée du mini-bar traditionnel. La salle de bain tout en blanc offre une ambiance tropicale minimaliste."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2021
"adult_amount" => 1760
"children_amount" => 0
"basis_amount" => 1760
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 440
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 440
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 440
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 440
"kids_price" => 0
]
]
]
]
]
]
1 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
"Update Stay Rooms results"
2 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
array:5 [
0 => App\DTO\RoomStayDTO {#6707
-marginRate: 20
-id: 159
-name: "Suite LUX"
-slug: "suite-lux"
-picture: "/uploads/rooms/159/67109ee09caa6294887379.jpeg"
-description: "Un refuge intime et romantique pour deux sous les tropiques. La salle de bains tout en blanc est chic et tranquille. Le coin salon, drapé de lin pur, présente un spacieux canapé cocon pour deux. Il y a un coin bar avec un chariot à cocktails - emportez votre verre dans l'espace cabane extérieur, et détendez- vous. A l’extérieur, le lit balançoire donnant sur la plage, est parfait pour faire la sieste. La salle de bain spacieuse dispose d'une baignoire surdimensionnée pour deux. Et le dressing est surprenant de beauté avec son magnifique papier peint personnalisé inspiré des coraux."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 185
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 650
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 650
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 650
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 650
"kids_price" => 0
]
]
"amount" => 2600
]
]
-totalRoomAmount: 2600.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#7430
-marginRate: 20
+extraId: 185
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2600.0
+totalStayAmountWoDiscount: 2600.0
+totalStayAmount: 2600.0
+finalAmountWoDiscount: 3120.0
+finalAmount: 3120.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#7433
-marginRate: 20
+extraId: 101
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 120
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 480
+kidsExtrasAmount: 0
+stayExtrasAmount: 480
+stayRoomAmount: 2600.0
+totalStayAmountWoDiscount: 3080.0
+totalStayAmount: 3080.0
+finalAmountWoDiscount: 3696.0
+finalAmount: 3696.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#7436
-marginRate: 20
+extraId: 103
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 200
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 800
+kidsExtrasAmount: 0
+stayExtrasAmount: 800
+stayRoomAmount: 2600.0
+totalStayAmountWoDiscount: 3400.0
+totalStayAmount: 3400.0
+finalAmountWoDiscount: 4080.0
+finalAmount: 4080.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#7437
-marginRate: 20
+extraId: 105
+name: "Formule "Tout Inclus""
+description: null
+stayTotalNights: 4
+dailyAdults: 280
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1120
+kidsExtrasAmount: 0
+stayExtrasAmount: 1120
+stayRoomAmount: 2600.0
+totalStayAmountWoDiscount: 3720.0
+totalStayAmount: 3720.0
+finalAmountWoDiscount: 4464.0
+finalAmount: 4464.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
1 => App\DTO\RoomStayDTO {#7386
-marginRate: 20
-id: 158
-name: "Suite Junior "Vue Plage""
-slug: "suite-junior-vue-plage"
-picture: "/uploads/rooms/158/6667ee9c44f48382009249.jpg"
-description: "Situées au rez-de-chaussée, au premier et au deuxième étage, nos Junior Suites Avec Vue Plage, offrent une vue magnifique sur la baie idyllique de Belle Mare. Les espaces intérieurs sont chics et sereins, imprégnés de nuances de sable avec des touches de couleur corail et jaune citron. Ces suites sont parfaites pour les couples ou les familles avec de jeunes enfants. La terrasse dispose d'un lit de jour pour se prélasser, tandis que le coin ‘bar’ est une version revisitée du mini bar traditionnel."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 185
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
]
"amount" => 2280
]
]
-totalRoomAmount: 2280.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#7438
-marginRate: 20
+extraId: 185
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2280.0
+totalStayAmountWoDiscount: 2280.0
+totalStayAmount: 2280.0
+finalAmountWoDiscount: 2736.0
+finalAmount: 2736.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#7439
-marginRate: 20
+extraId: 101
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 120
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 480
+kidsExtrasAmount: 0
+stayExtrasAmount: 480
+stayRoomAmount: 2280.0
+totalStayAmountWoDiscount: 2760.0
+totalStayAmount: 2760.0
+finalAmountWoDiscount: 3312.0
+finalAmount: 3312.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#7440
-marginRate: 20
+extraId: 103
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 200
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 800
+kidsExtrasAmount: 0
+stayExtrasAmount: 800
+stayRoomAmount: 2280.0
+totalStayAmountWoDiscount: 3080.0
+totalStayAmount: 3080.0
+finalAmountWoDiscount: 3696.0
+finalAmount: 3696.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#7441
-marginRate: 20
+extraId: 105
+name: "Formule "Tout Inclus""
+description: null
+stayTotalNights: 4
+dailyAdults: 280
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1120
+kidsExtrasAmount: 0
+stayExtrasAmount: 1120
+stayRoomAmount: 2280.0
+totalStayAmountWoDiscount: 3400.0
+totalStayAmount: 3400.0
+finalAmountWoDiscount: 4080.0
+finalAmount: 4080.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
2 => App\DTO\RoomStayDTO {#7407
-marginRate: 20
-id: 157
-name: "Suite Junior "Vue Piscine""
-slug: "suite-junior-vue-piscine"
-picture: "/uploads/rooms/157/6667ee662e922992732751.jpg"
-description: "Idéalement situées au cœur de l'hôtel, orientées vers la piscine principale, ces suites sont parfaites pour les familles avec de jeunes enfants. Parées de nuances sable, corail et jaune citron, avec vue sur la piscine, elles sont propices à la détente tout en étant à proximité des lieux favoris des enfants et des parents ! La salle de bains tout en blanc est équipée d'une magnifique baignoire et d'une grande douche."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 185
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
]
"amount" => 2080
]
]
-totalRoomAmount: 2080.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#7442
-marginRate: 20
+extraId: 185
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2080.0
+totalStayAmountWoDiscount: 2080.0
+totalStayAmount: 2080.0
+finalAmountWoDiscount: 2496.0
+finalAmount: 2496.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#7443
-marginRate: 20
+extraId: 101
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 120
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 480
+kidsExtrasAmount: 0
+stayExtrasAmount: 480
+stayRoomAmount: 2080.0
+totalStayAmountWoDiscount: 2560.0
+totalStayAmount: 2560.0
+finalAmountWoDiscount: 3072.0
+finalAmount: 3072.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#7444
-marginRate: 20
+extraId: 103
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 200
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 800
+kidsExtrasAmount: 0
+stayExtrasAmount: 800
+stayRoomAmount: 2080.0
+totalStayAmountWoDiscount: 2880.0
+totalStayAmount: 2880.0
+finalAmountWoDiscount: 3456.0
+finalAmount: 3456.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#7445
-marginRate: 20
+extraId: 105
+name: "Formule "Tout Inclus""
+description: null
+stayTotalNights: 4
+dailyAdults: 280
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1120
+kidsExtrasAmount: 0
+stayExtrasAmount: 1120
+stayRoomAmount: 2080.0
+totalStayAmountWoDiscount: 3200.0
+totalStayAmount: 3200.0
+finalAmountWoDiscount: 3840.0
+finalAmount: 3840.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
3 => App\DTO\RoomStayDTO {#7406
-marginRate: 20
-id: 156
-name: "Suite Junior "Bien-Être""
-slug: "belle-mare-suite-junior-bien-etre"
-picture: "/uploads/rooms/156/6667ee1740786040602908.jpg"
-description: "Conçue pour les couples ou les voyageurs solo amoureux du bien- être, cette suite junior offre de nombreux équipements de bien-être soigneusement sélectionnés, telles qu'un tapis de yoga, des blocs d'exercice mais inclut aussi une séance de coaching à la salle de sport, des offres au spa... Cette ambiance légère et décontractée, associée aux éléments de bien-être, est un véritable must pour les voyageurs en quête d'équilibre. Le coin ‘bar’ de la chambre, notre réinterprétation du mini-bar classique, est rempli de collations saines, tandis que la salle de bain est dotée d’une grande baignoire et d’une douche à l’italienne - parfait pour se détendre."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 185
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
]
"amount" => 1920
]
]
-totalRoomAmount: 1920.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#7446
-marginRate: 20
+extraId: 185
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1920.0
+totalStayAmountWoDiscount: 1920.0
+totalStayAmount: 1920.0
+finalAmountWoDiscount: 2304.0
+finalAmount: 2304.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#7447
-marginRate: 20
+extraId: 101
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 120
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 480
+kidsExtrasAmount: 0
+stayExtrasAmount: 480
+stayRoomAmount: 1920.0
+totalStayAmountWoDiscount: 2400.0
+totalStayAmount: 2400.0
+finalAmountWoDiscount: 2880.0
+finalAmount: 2880.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#7448
-marginRate: 20
+extraId: 103
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 200
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 800
+kidsExtrasAmount: 0
+stayExtrasAmount: 800
+stayRoomAmount: 1920.0
+totalStayAmountWoDiscount: 2720.0
+totalStayAmount: 2720.0
+finalAmountWoDiscount: 3264.0
+finalAmount: 3264.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#7449
-marginRate: 20
+extraId: 105
+name: "Formule "Tout Inclus""
+description: null
+stayTotalNights: 4
+dailyAdults: 280
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1120
+kidsExtrasAmount: 0
+stayExtrasAmount: 1120
+stayRoomAmount: 1920.0
+totalStayAmountWoDiscount: 3040.0
+totalStayAmount: 3040.0
+finalAmountWoDiscount: 3648.0
+finalAmount: 3648.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
4 => App\DTO\RoomStayDTO {#7384
-marginRate: 20
-id: 155
-name: "Suite Junior"
-slug: "belle-mare-suite-junior"
-picture: "/uploads/rooms/155/67109eb4260bc294654031.jpeg"
-description: "Que vous optiez pour le rez-de-chaussée, le premier ou le deuxième étage, votre chambre présente une palette de couleurs apaisantes, un mélange de tons sable et de touches corail et jaune citron. L'intérieur dévoile des panneaux en bois blanchis, des sièges en corde tissée et des tables moulées à partir de sable local recyclé, offrant une atmosphère sereine et accueillante. Sur la terrasse de la suite ‘Cabane’, vous trouverez une banquette confortable pour faire la sieste. Vous découvrirez aussi dans votre chambre le coin ‘bar’, notre version revisitée du mini-bar traditionnel. La salle de bain tout en blanc offre une ambiance tropicale minimaliste."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 185
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 440
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 440
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 440
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 440
"kids_price" => 0
]
]
"amount" => 1760
]
]
-totalRoomAmount: 1760.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#7450
-marginRate: 20
+extraId: 185
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1760.0
+totalStayAmountWoDiscount: 1760.0
+totalStayAmount: 1760.0
+finalAmountWoDiscount: 2112.0
+finalAmount: 2112.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#7451
-marginRate: 20
+extraId: 101
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 120
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 480
+kidsExtrasAmount: 0
+stayExtrasAmount: 480
+stayRoomAmount: 1760.0
+totalStayAmountWoDiscount: 2240.0
+totalStayAmount: 2240.0
+finalAmountWoDiscount: 2688.0
+finalAmount: 2688.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#7452
-marginRate: 20
+extraId: 103
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 200
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 800
+kidsExtrasAmount: 0
+stayExtrasAmount: 800
+stayRoomAmount: 1760.0
+totalStayAmountWoDiscount: 2560.0
+totalStayAmount: 2560.0
+finalAmountWoDiscount: 3072.0
+finalAmount: 3072.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#7453
-marginRate: 20
+extraId: 105
+name: "Formule "Tout Inclus""
+description: null
+stayTotalNights: 4
+dailyAdults: 280
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1120
+kidsExtrasAmount: 0
+stayExtrasAmount: 1120
+stayRoomAmount: 1760.0
+totalStayAmountWoDiscount: 2880.0
+totalStayAmount: 2880.0
+finalAmountWoDiscount: 3456.0
+finalAmount: 3456.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
]
1 in
RoomStayCalculation.php
line 274:
{
$offers_eligibled = [];
if ($this->debug) {
dump('All available offers of the hotel', $offers);
}
foreach ($offers as $key => $offer) {
"All available offers of the hotel"
1 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
"Step 1. Offres valides : "
2 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
null
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : LUX Grand Baie - Chambre : #129 - Suite Junior has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#7677
+rpId: 1941
+adultsPrice: 680
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 680
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 680
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 680
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 680
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : LUX Grand Baie - Chambre : #130 - Suite Junior Ocean has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#7698
+rpId: 1951
+adultsPrice: 780
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 780
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 780
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 780
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 780
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : LUX Grand Baie - Chambre : #131 - Suite Familiale has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#7719
+rpId: 1961
+adultsPrice: 1560
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1560
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1560
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1560
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1560
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
"Update Stay Rooms - Chambers Prices"
2 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
array:1 [
0 => array:3 [
0 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
"room_id" => 129
"room_picture" => "/uploads/rooms/129/67163137189df365199476.jpg"
"room_name" => "Suite Junior"
"room_slug" => "suite-junior"
"room_description" => """
Incroyablement spacieuses et lumineuses, nos suites Junior s’inspirent des lofts de designers. Situées au rez-de-chaussée, au premier ou au deuxième étage, toutes nos suites de 65 m2 (incluant les espaces extérieurs) sont dotées d'une salle de bain en Terrazzo, avec une douche à effet de pluie et une baignoire.\r\n
Un lit king-size et du linge de lit de qualité pour de bonnes nuits de sommeil. Un dressing spacieux et une terrasse extérieure avec vue sur la mer. Un design élégant et des éléments high-tech parfaitement intégrés, tels que des volets et rideaux automatisés.\r\n
Un bureau, un minibar et une TV LED 55" avec films à la demande. Installez-vous confortablement et profitez de ce séjour sous les tropiques !
"""
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1941
"adult_amount" => 2720
"children_amount" => 0
"basis_amount" => 2720
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 680
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 680
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 680
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 680
"kids_price" => 0
]
]
]
]
1 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 130
"room_picture" => "/uploads/rooms/130/666947ad03f65233073313.jpeg"
"room_name" => "Suite Junior Ocean"
"room_slug" => "suite-junior-ocean"
"room_description" => "Situées au deuxième étage, nos suites de 65 mètres carrés offrent une vue splendide sur le lagon depuis leur terrasse extérieure privée, entourée de végétation tropicale. Ces suites modernes se distinguent par leurs élégants carreaux en terrazzo, leur baignoire indépendante contemporaine, leur lit king-size et leur minibar. Elles intègrent également des éléments high-tech avec des fonctionnalités de contrôle intelligent de la chambre, vous offrant un contrôle total sur l'ambiance de la pièce. C'est l'endroit idéal pour se reposer et se ressourcer."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1951
"adult_amount" => 3120
"children_amount" => 0
"basis_amount" => 3120
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 780
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 780
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 780
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 780
"kids_price" => 0
]
]
]
]
2 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 131
"room_picture" => "/uploads/rooms/131/6669489299440151674286.jpeg"
"room_name" => "Suite Familiale"
"room_slug" => "suite-familiale-2"
"room_description" => "Nos suites familiales spacieuses et au design élégant de 130m2 sont conçues en pensant aux familles et aux groupes d'amis. Situées au rez-de-chaussée et au premier étage, nos suites se composent d'une paire de chambres communicantes, chacune équipée d'un lit king-size et d'une salle de bains avec une baignoire et une douche spacieuse. Nos suites familiales offrent des équipements adaptés aux besoins spécifiques des familles, comprenant deux minibars, deux téléviseurs LED de 55 pouces avec des chaînes adaptées aux enfants, ainsi que deux terrasses."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1961
"adult_amount" => 6240
"children_amount" => 0
"basis_amount" => 6240
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1560
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1560
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1560
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1560
"kids_price" => 0
]
]
]
]
]
]
1 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
"Update Stay Rooms results"
2 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
array:3 [
0 => App\DTO\RoomStayDTO {#7423
-marginRate: 20
-id: 129
-name: "Suite Junior"
-slug: "suite-junior"
-picture: "/uploads/rooms/129/67163137189df365199476.jpg"
-description: """
Incroyablement spacieuses et lumineuses, nos suites Junior s’inspirent des lofts de designers. Situées au rez-de-chaussée, au premier ou au deuxième étage, toutes nos suites de 65 m2 (incluant les espaces extérieurs) sont dotées d'une salle de bain en Terrazzo, avec une douche à effet de pluie et une baignoire.\r\n
Un lit king-size et du linge de lit de qualité pour de bonnes nuits de sommeil. Un dressing spacieux et une terrasse extérieure avec vue sur la mer. Un design élégant et des éléments high-tech parfaitement intégrés, tels que des volets et rideaux automatisés.\r\n
Un bureau, un minibar et une TV LED 55" avec films à la demande. Installez-vous confortablement et profitez de ce séjour sous les tropiques !
"""
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 174
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 680
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 680
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 680
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 680
"kids_price" => 0
]
]
"amount" => 2720
]
]
-totalRoomAmount: 2720.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#7736
-marginRate: 20
+extraId: 174
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2720.0
+totalStayAmountWoDiscount: 2720.0
+totalStayAmount: 2720.0
+finalAmountWoDiscount: 3264.0
+finalAmount: 3264.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#7739
-marginRate: 20
+extraId: 114
+name: "Suppléments Demi-pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 2720.0
+totalStayAmountWoDiscount: 3360.0
+totalStayAmount: 3360.0
+finalAmountWoDiscount: 4032.0
+finalAmount: 4032.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#7742
-marginRate: 20
+extraId: 115
+name: "Suppléments Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 240
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 960
+kidsExtrasAmount: 0
+stayExtrasAmount: 960
+stayRoomAmount: 2720.0
+totalStayAmountWoDiscount: 3680.0
+totalStayAmount: 3680.0
+finalAmountWoDiscount: 4416.0
+finalAmount: 4416.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#7743
-marginRate: 20
+extraId: 116
+name: "Suppléments Formule "Tout inclus""
+description: null
+stayTotalNights: 4
+dailyAdults: 500
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 2000
+kidsExtrasAmount: 0
+stayExtrasAmount: 2000
+stayRoomAmount: 2720.0
+totalStayAmountWoDiscount: 4720.0
+totalStayAmount: 4720.0
+finalAmountWoDiscount: 5664.0
+finalAmount: 5664.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
1 => App\DTO\RoomStayDTO {#7694
-marginRate: 20
-id: 130
-name: "Suite Junior Ocean"
-slug: "suite-junior-ocean"
-picture: "/uploads/rooms/130/666947ad03f65233073313.jpeg"
-description: "Situées au deuxième étage, nos suites de 65 mètres carrés offrent une vue splendide sur le lagon depuis leur terrasse extérieure privée, entourée de végétation tropicale. Ces suites modernes se distinguent par leurs élégants carreaux en terrazzo, leur baignoire indépendante contemporaine, leur lit king-size et leur minibar. Elles intègrent également des éléments high-tech avec des fonctionnalités de contrôle intelligent de la chambre, vous offrant un contrôle total sur l'ambiance de la pièce. C'est l'endroit idéal pour se reposer et se ressourcer."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 174
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 780
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 780
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 780
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 780
"kids_price" => 0
]
]
"amount" => 3120
]
]
-totalRoomAmount: 3120.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#7744
-marginRate: 20
+extraId: 174
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 3120.0
+totalStayAmountWoDiscount: 3120.0
+totalStayAmount: 3120.0
+finalAmountWoDiscount: 3744.0
+finalAmount: 3744.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#7745
-marginRate: 20
+extraId: 114
+name: "Suppléments Demi-pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 3120.0
+totalStayAmountWoDiscount: 3760.0
+totalStayAmount: 3760.0
+finalAmountWoDiscount: 4512.0
+finalAmount: 4512.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#7746
-marginRate: 20
+extraId: 115
+name: "Suppléments Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 240
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 960
+kidsExtrasAmount: 0
+stayExtrasAmount: 960
+stayRoomAmount: 3120.0
+totalStayAmountWoDiscount: 4080.0
+totalStayAmount: 4080.0
+finalAmountWoDiscount: 4896.0
+finalAmount: 4896.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#7747
-marginRate: 20
+extraId: 116
+name: "Suppléments Formule "Tout inclus""
+description: null
+stayTotalNights: 4
+dailyAdults: 500
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 2000
+kidsExtrasAmount: 0
+stayExtrasAmount: 2000
+stayRoomAmount: 3120.0
+totalStayAmountWoDiscount: 5120.0
+totalStayAmount: 5120.0
+finalAmountWoDiscount: 6144.0
+finalAmount: 6144.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
2 => App\DTO\RoomStayDTO {#7715
-marginRate: 20
-id: 131
-name: "Suite Familiale"
-slug: "suite-familiale-2"
-picture: "/uploads/rooms/131/6669489299440151674286.jpeg"
-description: "Nos suites familiales spacieuses et au design élégant de 130m2 sont conçues en pensant aux familles et aux groupes d'amis. Situées au rez-de-chaussée et au premier étage, nos suites se composent d'une paire de chambres communicantes, chacune équipée d'un lit king-size et d'une salle de bains avec une baignoire et une douche spacieuse. Nos suites familiales offrent des équipements adaptés aux besoins spécifiques des familles, comprenant deux minibars, deux téléviseurs LED de 55 pouces avec des chaînes adaptées aux enfants, ainsi que deux terrasses."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 174
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1560
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1560
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1560
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1560
"kids_price" => 0
]
]
"amount" => 6240
]
]
-totalRoomAmount: 6240.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#7748
-marginRate: 20
+extraId: 174
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 6240.0
+totalStayAmountWoDiscount: 6240.0
+totalStayAmount: 6240.0
+finalAmountWoDiscount: 7488.0
+finalAmount: 7488.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#7749
-marginRate: 20
+extraId: 114
+name: "Suppléments Demi-pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 6240.0
+totalStayAmountWoDiscount: 6880.0
+totalStayAmount: 6880.0
+finalAmountWoDiscount: 8256.0
+finalAmount: 8256.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#7750
-marginRate: 20
+extraId: 115
+name: "Suppléments Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 240
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 960
+kidsExtrasAmount: 0
+stayExtrasAmount: 960
+stayRoomAmount: 6240.0
+totalStayAmountWoDiscount: 7200.0
+totalStayAmount: 7200.0
+finalAmountWoDiscount: 8640.0
+finalAmount: 8640.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#7751
-marginRate: 20
+extraId: 116
+name: "Suppléments Formule "Tout inclus""
+description: null
+stayTotalNights: 4
+dailyAdults: 500
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 2000
+kidsExtrasAmount: 0
+stayExtrasAmount: 2000
+stayRoomAmount: 6240.0
+totalStayAmountWoDiscount: 8240.0
+totalStayAmount: 8240.0
+finalAmountWoDiscount: 9888.0
+finalAmount: 9888.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
]
1 in
RoomStayCalculation.php
line 274:
{
$offers_eligibled = [];
if ($this->debug) {
dump('All available offers of the hotel', $offers);
}
foreach ($offers as $key => $offer) {
"All available offers of the hotel"
2 in
RoomStayCalculation.php
line 274:
{
$offers_eligibled = [];
if ($this->debug) {
dump('All available offers of the hotel', $offers);
}
foreach ($offers as $key => $offer) {
Doctrine\Common\Collections\ArrayCollection {#7983
-elements: array:1 [
0 => App\Entity\Offers {#7797
-id: 222
-title: "FABULOUS OFFER 25%"
-type: "Special"
-hotel: App\Entity\Hotels {#1240
-id: 21
-name: "LUX Grand Baie"
-description: "Un joyau de modernité délicatement posé sur la côte nord de l'île Maurice, qui fait tourner les têtes et chavirer les cœurs. LUX* Grand Baie redéfinit les codes du luxe et invite à apprécier le rythme paisible de la vie sur les îles. Paisible, mais pas monotone. Cet élégant boutique-hôtel, à l'image de la ville balnéaire à laquelle il doit son nom, est captivant et exaltant. Son incomparable scène culinaire, son époustouflant rooftop, son spa dernier cri sont autant d’invitations à profiter pleinement de chaque instant."
-website: "https://www.luxresorts.com/fr/maurice/hotel/luxgrandbaie"
-stars: 5
-youtubeVideoId: "p3Bcdro8Csw"
-phone: "+230 209 2200"
-email: "luxgrandbaie@luxresorts.com"
-active: true
-gmapUrl: "<iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3749.1847857001076!2d57.58043401217097!3d-20.00075778132614!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x217dab1da78e0199%3A0x8fe7bfe84f5e6684!2sLUX*2A%20Grand%20Baie!5e0!3m2!1sfr!2sfr!4v1718969493716!5m2!1sfr!2sfr" width="100%" height="600" style="border:0;" allowfullscreen="" loading="lazy" referrerpolicy="no-referrer-when-downgrade"></iframe>"
-zone: "Nord"
-createdAt: DateTimeImmutable @1714145854 {#1238
date: 2024-04-26 15:37:34.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672825 {#1239
date: 2024-10-23 08:40:25.0 UTC (+00:00)
}
-rooms: Doctrine\ORM\PersistentCollection {#1241
#collection: Doctrine\Common\Collections\ArrayCollection {#1242
-elements: array:3 [
0 => App\Entity\Rooms {#2060
-id: 129
-name: "Suite Junior"
-description: """
Incroyablement spacieuses et lumineuses, nos suites Junior s’inspirent des lofts de designers. Situées au rez-de-chaussée, au premier ou au deuxième étage, toutes nos suites de 65 m2 (incluant les espaces extérieurs) sont dotées d'une salle de bain en Terrazzo, avec une douche à effet de pluie et une baignoire.\r\n
Un lit king-size et du linge de lit de qualité pour de bonnes nuits de sommeil. Un dressing spacieux et une terrasse extérieure avec vue sur la mer. Un design élégant et des éléments high-tech parfaitement intégrés, tels que des volets et rideaux automatisés.\r\n
Un bureau, un minibar et une TV LED 55" avec films à la demande. Installez-vous confortablement et profitez de ce séjour sous les tropiques !
"""
-active: true
-hotel: App\Entity\Hotels {#1240}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#7669
-elements: array:1 [
0 => App\Entity\RoomPrices {#2067
-id: 1941
-title: "Suite Junior - Moyenne Saison"
-room: App\Entity\Rooms {#2060}
-quantity: null
-stayStartedAt: DateTimeImmutable @1737201600 {#2056
date: 2025-01-18 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746014400 {#2057
date: 2025-04-30 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2058
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2059
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "680.00"
-singleOccupancy: "655.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: 105.0
-extraTeen: null
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2061
#collection: Doctrine\Common\Collections\ArrayCollection {#2062
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2060}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2063
#collection: Doctrine\Common\Collections\ArrayCollection {#2064
-elements: array:6 [
0 => App\Entity\RoomCapacities {#3536
-id: 2119
-room: App\Entity\Rooms {#2060}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3535
-id: 2120
-room: App\Entity\Rooms {#2060}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3534
-id: 2121
-room: App\Entity\Rooms {#2060}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3533
-id: 2122
-room: App\Entity\Rooms {#2060}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3532
-id: 2123
-room: App\Entity\Rooms {#2060}
-adults: 1
-teens: null
-children: 2
-babies: 1
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3531
-id: 2124
-room: App\Entity\Rooms {#2060}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:6 [ …6]
-owner: App\Entity\Rooms {#2060}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2054
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2055
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "67163137189df365199476.jpg"
-gallery: App\Entity\Galleries {#2068
-id: 17
-hotel: null
-room: App\Entity\Rooms {#2060}
-images: Doctrine\ORM\PersistentCollection {#2069
#collection: Doctrine\Common\Collections\ArrayCollection {#2070
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2068}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Grand Baie Suite junior"
}
-mediaDirSlug: "129"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "suite-junior"
}
1 => App\Entity\Rooms {#2077
-id: 130
-name: "Suite Junior Ocean"
-description: "Situées au deuxième étage, nos suites de 65 mètres carrés offrent une vue splendide sur le lagon depuis leur terrasse extérieure privée, entourée de végétation tropicale. Ces suites modernes se distinguent par leurs élégants carreaux en terrazzo, leur baignoire indépendante contemporaine, leur lit king-size et leur minibar. Elles intègrent également des éléments high-tech avec des fonctionnalités de contrôle intelligent de la chambre, vous offrant un contrôle total sur l'ambiance de la pièce. C'est l'endroit idéal pour se reposer et se ressourcer."
-active: true
-hotel: App\Entity\Hotels {#1240}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#7658
-elements: array:1 [
0 => App\Entity\RoomPrices {#2084
-id: 1951
-title: "Suite Junior Ocean - Intermédiaire (copie)"
-room: App\Entity\Rooms {#2077}
-quantity: null
-stayStartedAt: DateTimeImmutable @1737201600 {#2073
date: 2025-01-18 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746014400 {#2074
date: 2025-04-30 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2075
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2076
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "780.00"
-singleOccupancy: "755.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: 105.0
-extraTeen: null
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2078
#collection: Doctrine\Common\Collections\ArrayCollection {#2079
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2077}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2080
#collection: Doctrine\Common\Collections\ArrayCollection {#2081
-elements: array:8 [
0 => App\Entity\RoomCapacities {#3516
-id: 2125
-room: App\Entity\Rooms {#2077}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3519
-id: 2126
-room: App\Entity\Rooms {#2077}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3518
-id: 2127
-room: App\Entity\Rooms {#2077}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3520
-id: 2128
-room: App\Entity\Rooms {#2077}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3523
-id: 2129
-room: App\Entity\Rooms {#2077}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3522
-id: 2130
-room: App\Entity\Rooms {#2077}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3525
-id: 2131
-room: App\Entity\Rooms {#2077}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3524
-id: 2132
-room: App\Entity\Rooms {#2077}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:8 [ …8]
-owner: App\Entity\Rooms {#2077}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2071
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2072
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666947ad03f65233073313.jpeg"
-gallery: App\Entity\Galleries {#2085
-id: 158
-hotel: null
-room: App\Entity\Rooms {#2077}
-images: Doctrine\ORM\PersistentCollection {#2086
#collection: Doctrine\Common\Collections\ArrayCollection {#2087
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2085}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "lux grand baie suite junior ocean"
}
-mediaDirSlug: "130"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "suite-junior-ocean"
}
2 => App\Entity\Rooms {#2094
-id: 131
-name: "Suite Familiale"
-description: "Nos suites familiales spacieuses et au design élégant de 130m2 sont conçues en pensant aux familles et aux groupes d'amis. Situées au rez-de-chaussée et au premier étage, nos suites se composent d'une paire de chambres communicantes, chacune équipée d'un lit king-size et d'une salle de bains avec une baignoire et une douche spacieuse. Nos suites familiales offrent des équipements adaptés aux besoins spécifiques des familles, comprenant deux minibars, deux téléviseurs LED de 55 pouces avec des chaînes adaptées aux enfants, ainsi que deux terrasses."
-active: true
-hotel: App\Entity\Hotels {#1240}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#7687
-elements: array:1 [
0 => App\Entity\RoomPrices {#2101
-id: 1961
-title: "Suite Familiale - Intermédiaire (copie)"
-room: App\Entity\Rooms {#2094}
-quantity: null
-stayStartedAt: DateTimeImmutable @1737201600 {#2090
date: 2025-01-18 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746014400 {#2091
date: 2025-04-30 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2092
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2093
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "1560.00"
-singleOccupancy: "1560.00"
-tripleOccupancy: "1560.00"
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: null
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2095
#collection: Doctrine\Common\Collections\ArrayCollection {#2096
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2094}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2097
#collection: Doctrine\Common\Collections\ArrayCollection {#2098
-elements: array:14 [
0 => App\Entity\RoomCapacities {#3527
-id: 2133
-room: App\Entity\Rooms {#2094}
-adults: 4
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3528
-id: 2134
-room: App\Entity\Rooms {#2094}
-adults: 3
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3500
-id: 2135
-room: App\Entity\Rooms {#2094}
-adults: 2
-teens: null
-children: 4
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3501
-id: 2136
-room: App\Entity\Rooms {#2094}
-adults: 2
-teens: 1
-children: 3
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3411
-id: 2137
-room: App\Entity\Rooms {#2094}
-adults: 2
-teens: 1
-children: 2
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3409
-id: 2138
-room: App\Entity\Rooms {#2094}
-adults: 2
-teens: 1
-children: null
-babies: 2
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3506
-id: 2139
-room: App\Entity\Rooms {#2094}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3554
-id: 2140
-room: App\Entity\Rooms {#2094}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#3541
-id: 2141
-room: App\Entity\Rooms {#2094}
-adults: 3
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#3550
-id: 2142
-room: App\Entity\Rooms {#2094}
-adults: 4
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#3549
-id: 2143
-room: App\Entity\Rooms {#2094}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#3548
-id: 2144
-room: App\Entity\Rooms {#2094}
-adults: 1
-teens: 1
-children: 3
-babies: null
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#3547
-id: 2145
-room: App\Entity\Rooms {#2094}
-adults: 1
-teens: 1
-children: 2
-babies: null
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#3546
-id: 2146
-room: App\Entity\Rooms {#2094}
-adults: 1
-teens: 1
-children: null
-babies: 2
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:14 [ …14]
-owner: App\Entity\Rooms {#2094}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2088
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729674522 {#2089
date: 2024-10-23 09:08:42.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "6669489299440151674286.jpeg"
-gallery: App\Entity\Galleries {#2102
-id: 159
-hotel: null
-room: App\Entity\Rooms {#2094}
-images: Doctrine\ORM\PersistentCollection {#2103
#collection: Doctrine\Common\Collections\ArrayCollection {#2104
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2102}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Lux grand baie suite familiale"
}
-mediaDirSlug: "131"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "suite-familiale-2"
}
]
}
#initialized: true
-snapshot: array:3 [ …3]
-owner: App\Entity\Hotels {#1240}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#880 …}
-backRefFieldName: "hotel"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-address: "Route Côtière, Grand Baie, Île Maurice"
-checkInTime: "14:00"
-checkOutTime: "11:00"
-babyAgeMax: "6"
-childAgeMax: "12"
-teenAgeMax: "18"
-extraCharges: Doctrine\ORM\PersistentCollection {#1243
#collection: Doctrine\Common\Collections\ArrayCollection {#1244
-elements: array:4 [
0 => App\Entity\ExtraCharges {#7731
-id: 114
-title: "Suppléments Demi-pension"
-description: null
-adultExtra: 80.0
-babyExtra: null
-childExtra: 40.0
-teenExtra: 80.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1240}
}
1 => App\Entity\ExtraCharges {#7692
-id: 115
-title: "Suppléments Pension complète"
-description: null
-adultExtra: 120.0
-babyExtra: null
-childExtra: 60.0
-teenExtra: 120.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1240}
}
2 => App\Entity\ExtraCharges {#7708
-id: 116
-title: "Suppléments Formule "Tout inclus""
-description: null
-adultExtra: 250.0
-babyExtra: null
-childExtra: 125.0
-teenExtra: 188.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1240}
}
3 => App\Entity\ExtraCharges {#7738
-id: 174
-title: "BASE - PETIT DEJEUNER"
-description: null
-adultExtra: 0.0
-babyExtra: 0.0
-childExtra: 0.0
-teenExtra: 0.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: true
-minNights: null
-hotel: App\Entity\Hotels {#1240}
}
]
}
#initialized: true
-snapshot: array:4 [ …4]
-owner: App\Entity\Hotels {#1240}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#876 …}
-backRefFieldName: "hotel"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-imageFile: null
-featuredImage: "66965ccb59247450838715.jpg"
-gallery: App\Entity\Galleries {#1247
-id: 16
-hotel: App\Entity\Hotels {#1240}
-room: null
-images: Doctrine\ORM\PersistentCollection {#1248
#collection: Doctrine\Common\Collections\ArrayCollection {#1249
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1247}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Lux Grand Baie."
}
-mediaDirSlug: null
-offers: Doctrine\Common\Collections\ArrayCollection {#7983}
-highlighted: false
-services: array:1 [
0 => ""
]
-hlStartAt: null
-hlEndAt: null
-slug: "lux-grand-baie"
}
-description: null
-stayStartAt: DateTimeImmutable @1740268800 {#7793
date: 2025-02-23 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1743379200 {#7794
date: 2025-03-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1733011200 {#7795
date: 2024-12-01 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1744675200 {#7796
date: 2025-04-15 00:00:00.0 UTC (+00:00)
}
-reference: "FABULOUS OFFER 25%"
-minNights: null
-maxNights: null
-earlyBookingDays: null
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#7798
#collection: Doctrine\Common\Collections\ArrayCollection {#7799
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#7797}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1075 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 25
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#7800
#collection: Doctrine\Common\Collections\ArrayCollection {#7801
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#7797}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1081 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-offers: Doctrine\ORM\PersistentCollection {#7802
#collection: Doctrine\Common\Collections\ArrayCollection {#7803
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#7797}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1085 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#7804
#collection: Doctrine\Common\Collections\ArrayCollection {#7805
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#7797}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1087 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#7806
#collection: Doctrine\Common\Collections\ArrayCollection {#7807
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#7797}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1093 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-extrasDiscount: null
-priority: 1
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
]
}
1 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
"Step 1. Offres valides : "
2 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
array:1 [
0 => App\DTO\PromotionDTO {#8056
-debug: true
+id: 222
+title: "FABULOUS OFFER 25%"
+description: null
+type: "Special"
+reference: "FABULOUS OFFER 25%"
+from: DateTimeImmutable @1740268800 {#7793
date: 2025-02-23 00:00:00.0 UTC (+00:00)
}
+to: DateTimeImmutable @1743379200 {#7794
date: 2025-03-31 00:00:00.0 UTC (+00:00)
}
+earlyBookingDays: null
+minNights: null
+maxNights: null
+discountRate: 25
+discountFamilyRates: []
+combinableRate: null
+priority: 1
+extrasDiscountRate: null
+isAllRooms: true
+isCombinable: false
+selectedRoomsIDs: []
+selectedExtrasIDs: []
+selectedOffersIDs: []
+selectedExtrasDiscountIDs: []
}
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : LUX Grand Gaube - Chambre : #150 - Suite Junior Ocean has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#8169
+rpId: 2402
+adultsPrice: 490
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 490
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 490
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 490
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 490
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : LUX Grand Gaube - Chambre : #151 - Suite LUX has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#8190
+rpId: 2412
+adultsPrice: 560
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 560
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 560
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 560
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 560
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : LUX Grand Gaube - Chambre : #149 - Suite Junior has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#8211
+rpId: 2392
+adultsPrice: 420
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : LUX Grand Gaube - Chambre : #148 - Suite Junior "Bien-Être" has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#8232
+rpId: 2382
+adultsPrice: 380
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 380
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 380
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 380
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 380
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : LUX Grand Gaube - Chambre : #147 - Chambre Supérieure has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#8253
+rpId: 2372
+adultsPrice: 340
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 340
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 340
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 340
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 340
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
"Update Stay Rooms - Chambers Prices"
2 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
array:1 [
0 => array:5 [
0 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
"room_id" => 150
"room_picture" => "/uploads/rooms/150/6710b3be4ebf6839181379.jpeg"
"room_name" => "Suite Junior Ocean"
"room_slug" => "suite-junior-ocean"
"room_description" => "Ces élégantes suites océan de style maison de plage avec un lit à baldaquin contemporain, disposent toutes d'une baignoire sur la terrasse ainsi qu'une douche à effets de pluie avec ses portes coulissantes en verre donnant sur l’intérieur ou sur l’extérieur. Depuis votre bain moussant , situées au deuxième étage sur votre terrasse ensoleillée, vous pouvez apercevoir les îlots au large. Vous puissiez profiter des meilleures vues en toute intimité."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2402
"adult_amount" => 1960
"children_amount" => 0
"basis_amount" => 1960
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 490
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 490
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 490
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 490
"kids_price" => 0
]
]
]
]
1 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 151
"room_picture" => "/uploads/rooms/151/6667ec267eedb812005739.jpg"
"room_name" => "Suite LUX"
"room_slug" => "suite-lux"
"room_description" => "Il n’y a rien de tel que de se réveiller dans une chambre spacieuse, et d’entrevoir les rayons du soleil. Le salon, ouvert sur la terrasse extérieure, invite à la détente. Le canapé-lit peut accueillir une troisième personne. Il y a aussi un dressing, une grande et belle salle de bain, avec une baignoire et une douche à l’italienne, et une deuxième salle de bain pour plus d’intimité. Une pièce lumineuse. Tout l’espace nécessaire. Et le petit plus ? Le son de l’océan pour vous bercer."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2412
"adult_amount" => 2240
"children_amount" => 0
"basis_amount" => 2240
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 560
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 560
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 560
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 560
"kids_price" => 0
]
]
]
]
2 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 149
"room_picture" => "/uploads/rooms/149/6710b3a115d23335055833.jpg"
"room_name" => "Suite Junior"
"room_slug" => "suite-junior"
"room_description" => "Naturellement élégante et luxueuse, cette suite s’inspire des maisons de plage. Il y a une superbe salle de bain, avec une baignoire en îlot et une immense baie vitrée donnant sur un jardin privé - pour laisser entrer toute la lumière naturelle (et le soleil mauricien). L’emplacement au rez-de-chaussée offre un accès direct à la plage et au lagon. Le design de Kelly Hoppen, vous transportent immédiatement dans une luxueuse maison de plage."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2392
"adult_amount" => 1680
"children_amount" => 0
"basis_amount" => 1680
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
]
]
]
3 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 148
"room_picture" => "/uploads/rooms/148/6710b382c0c99269883203.jpeg"
"room_name" => "Suite Junior "Bien-Être""
"room_slug" => "suite-junior-bien-etre"
"room_description" => "Situées le long d’une baie isolée, nos chambres Deluxe offrent un panorama dégagé sur l’océan Indien et bénéficient d’un environnement parfaitement calme. Décorées façon « rétro-chic, ces chambres au style bord de mer sont équipées de tous les avantages et commodités. Et attendez de voir la magnifique salle de bain, sa plante d’intérieur et ses murs roses saumon - ultra instagrammable !"
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2382
"adult_amount" => 1520
"children_amount" => 0
"basis_amount" => 1520
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 380
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 380
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 380
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 380
"kids_price" => 0
]
]
]
]
4 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 147
"room_picture" => "/uploads/rooms/147/6710b34c4a48d553608421.jpg"
"room_name" => "Chambre Supérieure"
"room_slug" => "chambre-superieure"
"room_description" => "Avec des vues sur le lagon et une terrasse ou un balcon, nos chambres supérieures ressemblent à un appartement avec une ambiance de maison de plage. Avec des salles de bains rétro-chic, ces chambres peuvent être reliées entre elles pour accueillir une tribu de voyageurs."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2372
"adult_amount" => 1360
"children_amount" => 0
"basis_amount" => 1360
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 340
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 340
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 340
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 340
"kids_price" => 0
]
]
]
]
]
]
1 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
"Update Stay Rooms results"
2 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
array:5 [
0 => App\DTO\RoomStayDTO {#7733
-marginRate: 20
-id: 150
-name: "Suite Junior Ocean"
-slug: "suite-junior-ocean"
-picture: "/uploads/rooms/150/6710b3be4ebf6839181379.jpeg"
-description: "Ces élégantes suites océan de style maison de plage avec un lit à baldaquin contemporain, disposent toutes d'une baignoire sur la terrasse ainsi qu'une douche à effets de pluie avec ses portes coulissantes en verre donnant sur l’intérieur ou sur l’extérieur. Depuis votre bain moussant , situées au deuxième étage sur votre terrasse ensoleillée, vous pouvez apercevoir les îlots au large. Vous puissiez profiter des meilleures vues en toute intimité."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 186
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 490
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 490
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 490
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 490
"kids_price" => 0
]
]
"amount" => 1960
]
]
-totalRoomAmount: 1960.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#8272
-marginRate: 20
+extraId: 186
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1960.0
+totalStayAmountWoDiscount: 1960.0
+totalStayAmount: 1960.0
+finalAmountWoDiscount: 2352.0
+finalAmount: 2352.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#8275
-marginRate: 20
+extraId: 95
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 100
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 400
+kidsExtrasAmount: 0
+stayExtrasAmount: 400
+stayRoomAmount: 1960.0
+totalStayAmountWoDiscount: 2360.0
+totalStayAmount: 2360.0
+finalAmountWoDiscount: 2832.0
+finalAmount: 2832.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#8278
-marginRate: 20
+extraId: 96
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 180
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 720
+kidsExtrasAmount: 0
+stayExtrasAmount: 720
+stayRoomAmount: 1960.0
+totalStayAmountWoDiscount: 2680.0
+totalStayAmount: 2680.0
+finalAmountWoDiscount: 3216.0
+finalAmount: 3216.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#8279
-marginRate: 20
+extraId: 98
+name: "Formule "Tout Inclus""
+description: null
+stayTotalNights: 4
+dailyAdults: 260
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1040
+kidsExtrasAmount: 0
+stayExtrasAmount: 1040
+stayRoomAmount: 1960.0
+totalStayAmountWoDiscount: 3000.0
+totalStayAmount: 3000.0
+finalAmountWoDiscount: 3600.0
+finalAmount: 3600.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
1 => App\DTO\RoomStayDTO {#8228
-marginRate: 20
-id: 151
-name: "Suite LUX"
-slug: "suite-lux"
-picture: "/uploads/rooms/151/6667ec267eedb812005739.jpg"
-description: "Il n’y a rien de tel que de se réveiller dans une chambre spacieuse, et d’entrevoir les rayons du soleil. Le salon, ouvert sur la terrasse extérieure, invite à la détente. Le canapé-lit peut accueillir une troisième personne. Il y a aussi un dressing, une grande et belle salle de bain, avec une baignoire et une douche à l’italienne, et une deuxième salle de bain pour plus d’intimité. Une pièce lumineuse. Tout l’espace nécessaire. Et le petit plus ? Le son de l’océan pour vous bercer."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 186
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 560
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 560
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 560
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 560
"kids_price" => 0
]
]
"amount" => 2240
]
]
-totalRoomAmount: 2240.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#8280
-marginRate: 20
+extraId: 186
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2240.0
+totalStayAmountWoDiscount: 2240.0
+totalStayAmount: 2240.0
+finalAmountWoDiscount: 2688.0
+finalAmount: 2688.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#8281
-marginRate: 20
+extraId: 95
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 100
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 400
+kidsExtrasAmount: 0
+stayExtrasAmount: 400
+stayRoomAmount: 2240.0
+totalStayAmountWoDiscount: 2640.0
+totalStayAmount: 2640.0
+finalAmountWoDiscount: 3168.0
+finalAmount: 3168.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#8282
-marginRate: 20
+extraId: 96
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 180
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 720
+kidsExtrasAmount: 0
+stayExtrasAmount: 720
+stayRoomAmount: 2240.0
+totalStayAmountWoDiscount: 2960.0
+totalStayAmount: 2960.0
+finalAmountWoDiscount: 3552.0
+finalAmount: 3552.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#8283
-marginRate: 20
+extraId: 98
+name: "Formule "Tout Inclus""
+description: null
+stayTotalNights: 4
+dailyAdults: 260
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1040
+kidsExtrasAmount: 0
+stayExtrasAmount: 1040
+stayRoomAmount: 2240.0
+totalStayAmountWoDiscount: 3280.0
+totalStayAmount: 3280.0
+finalAmountWoDiscount: 3936.0
+finalAmount: 3936.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
2 => App\DTO\RoomStayDTO {#8249
-marginRate: 20
-id: 149
-name: "Suite Junior"
-slug: "suite-junior"
-picture: "/uploads/rooms/149/6710b3a115d23335055833.jpg"
-description: "Naturellement élégante et luxueuse, cette suite s’inspire des maisons de plage. Il y a une superbe salle de bain, avec une baignoire en îlot et une immense baie vitrée donnant sur un jardin privé - pour laisser entrer toute la lumière naturelle (et le soleil mauricien). L’emplacement au rez-de-chaussée offre un accès direct à la plage et au lagon. Le design de Kelly Hoppen, vous transportent immédiatement dans une luxueuse maison de plage."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 186
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
]
"amount" => 1680
]
]
-totalRoomAmount: 1680.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#8284
-marginRate: 20
+extraId: 186
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1680.0
+totalStayAmountWoDiscount: 1680.0
+totalStayAmount: 1680.0
+finalAmountWoDiscount: 2016.0
+finalAmount: 2016.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#8285
-marginRate: 20
+extraId: 95
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 100
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 400
+kidsExtrasAmount: 0
+stayExtrasAmount: 400
+stayRoomAmount: 1680.0
+totalStayAmountWoDiscount: 2080.0
+totalStayAmount: 2080.0
+finalAmountWoDiscount: 2496.0
+finalAmount: 2496.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#8286
-marginRate: 20
+extraId: 96
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 180
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 720
+kidsExtrasAmount: 0
+stayExtrasAmount: 720
+stayRoomAmount: 1680.0
+totalStayAmountWoDiscount: 2400.0
+totalStayAmount: 2400.0
+finalAmountWoDiscount: 2880.0
+finalAmount: 2880.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#8287
-marginRate: 20
+extraId: 98
+name: "Formule "Tout Inclus""
+description: null
+stayTotalNights: 4
+dailyAdults: 260
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1040
+kidsExtrasAmount: 0
+stayExtrasAmount: 1040
+stayRoomAmount: 1680.0
+totalStayAmountWoDiscount: 2720.0
+totalStayAmount: 2720.0
+finalAmountWoDiscount: 3264.0
+finalAmount: 3264.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
3 => App\DTO\RoomStayDTO {#8248
-marginRate: 20
-id: 148
-name: "Suite Junior "Bien-Être""
-slug: "suite-junior-bien-etre"
-picture: "/uploads/rooms/148/6710b382c0c99269883203.jpeg"
-description: "Situées le long d’une baie isolée, nos chambres Deluxe offrent un panorama dégagé sur l’océan Indien et bénéficient d’un environnement parfaitement calme. Décorées façon « rétro-chic, ces chambres au style bord de mer sont équipées de tous les avantages et commodités. Et attendez de voir la magnifique salle de bain, sa plante d’intérieur et ses murs roses saumon - ultra instagrammable !"
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 186
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 380
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 380
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 380
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 380
"kids_price" => 0
]
]
"amount" => 1520
]
]
-totalRoomAmount: 1520.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#8288
-marginRate: 20
+extraId: 186
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1520.0
+totalStayAmountWoDiscount: 1520.0
+totalStayAmount: 1520.0
+finalAmountWoDiscount: 1824.0
+finalAmount: 1824.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#8289
-marginRate: 20
+extraId: 95
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 100
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 400
+kidsExtrasAmount: 0
+stayExtrasAmount: 400
+stayRoomAmount: 1520.0
+totalStayAmountWoDiscount: 1920.0
+totalStayAmount: 1920.0
+finalAmountWoDiscount: 2304.0
+finalAmount: 2304.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#8290
-marginRate: 20
+extraId: 96
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 180
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 720
+kidsExtrasAmount: 0
+stayExtrasAmount: 720
+stayRoomAmount: 1520.0
+totalStayAmountWoDiscount: 2240.0
+totalStayAmount: 2240.0
+finalAmountWoDiscount: 2688.0
+finalAmount: 2688.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#8291
-marginRate: 20
+extraId: 98
+name: "Formule "Tout Inclus""
+description: null
+stayTotalNights: 4
+dailyAdults: 260
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1040
+kidsExtrasAmount: 0
+stayExtrasAmount: 1040
+stayRoomAmount: 1520.0
+totalStayAmountWoDiscount: 2560.0
+totalStayAmount: 2560.0
+finalAmountWoDiscount: 3072.0
+finalAmount: 3072.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
4 => App\DTO\RoomStayDTO {#8226
-marginRate: 20
-id: 147
-name: "Chambre Supérieure"
-slug: "chambre-superieure"
-picture: "/uploads/rooms/147/6710b34c4a48d553608421.jpg"
-description: "Avec des vues sur le lagon et une terrasse ou un balcon, nos chambres supérieures ressemblent à un appartement avec une ambiance de maison de plage. Avec des salles de bains rétro-chic, ces chambres peuvent être reliées entre elles pour accueillir une tribu de voyageurs."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 186
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 340
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 340
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 340
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 340
"kids_price" => 0
]
]
"amount" => 1360
]
]
-totalRoomAmount: 1360.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#8292
-marginRate: 20
+extraId: 186
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1360.0
+totalStayAmountWoDiscount: 1360.0
+totalStayAmount: 1360.0
+finalAmountWoDiscount: 1632.0
+finalAmount: 1632.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#8293
-marginRate: 20
+extraId: 95
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 100
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 400
+kidsExtrasAmount: 0
+stayExtrasAmount: 400
+stayRoomAmount: 1360.0
+totalStayAmountWoDiscount: 1760.0
+totalStayAmount: 1760.0
+finalAmountWoDiscount: 2112.0
+finalAmount: 2112.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#8294
-marginRate: 20
+extraId: 96
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 180
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 720
+kidsExtrasAmount: 0
+stayExtrasAmount: 720
+stayRoomAmount: 1360.0
+totalStayAmountWoDiscount: 2080.0
+totalStayAmount: 2080.0
+finalAmountWoDiscount: 2496.0
+finalAmount: 2496.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#8295
-marginRate: 20
+extraId: 98
+name: "Formule "Tout Inclus""
+description: null
+stayTotalNights: 4
+dailyAdults: 260
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1040
+kidsExtrasAmount: 0
+stayExtrasAmount: 1040
+stayRoomAmount: 1360.0
+totalStayAmountWoDiscount: 2400.0
+totalStayAmount: 2400.0
+finalAmountWoDiscount: 2880.0
+finalAmount: 2880.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
]
1 in
RoomStayCalculation.php
line 274:
{
$offers_eligibled = [];
if ($this->debug) {
dump('All available offers of the hotel', $offers);
}
foreach ($offers as $key => $offer) {
"All available offers of the hotel"
1 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
"Step 1. Offres valides : "
2 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
null
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : LUX Le Morne - Chambre : #161 - Chambre Deluxe has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#8534
+rpId: 1971
+adultsPrice: 460
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 460
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 460
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 460
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 460
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : LUX Le Morne - Chambre : #162 - Suite Junior "Sunset" has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#8555
+rpId: 1981
+adultsPrice: 520
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : LUX Le Morne - Chambre : #163 - Suite Junior Prestige has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#8576
+rpId: 1991
+adultsPrice: 620
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 620
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 620
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 620
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 620
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : LUX Le Morne - Chambre : #164 - Suite Junior Océan has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#8597
+rpId: 2001
+adultsPrice: 690
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 690
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 690
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 690
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 690
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : LUX Le Morne - Chambre : #165 - Suite Famille has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#8618
+rpId: 2011
+adultsPrice: 1310
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1310
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1310
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1310
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1310
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
"Update Stay Rooms - Chambers Prices"
2 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
array:1 [
0 => array:5 [
0 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
"room_id" => 161
"room_picture" => "/uploads/rooms/161/66693f1e01c65014667173.jpeg"
"room_name" => "Chambre Deluxe"
"room_slug" => "lux-le-morne-chambre-deluxe"
"room_description" => "Avec leur palette de couleurs neutres, du linge de lit immaculé, des volets blancs façon maison de bord de mer et des tapis tissés, ces chambres sont des petits bijoux ! Situées au rez-de-chaussé ou au 1er étage, les chambres deluxe sont aussi confortables que raffinées. Et attendez de voir notre Tropical bar, une jolie revisite du mini-bar ( 100% personnalisable). Alors préparez-vous un cocktail maison et installez-vous confortablement sur votre terrasse ou balcon privé, pour profiter du beau temps mauricien et de la vue sur les jardins tropicaux. Et si vous êtes plutôt du genre Wifi, climatisation et TV, nous avons aussi tout cela !"
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1971
"adult_amount" => 1840
"children_amount" => 0
"basis_amount" => 1840
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 460
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 460
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 460
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 460
"kids_price" => 0
]
]
]
]
1 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 162
"room_picture" => "/uploads/rooms/162/6710983375dca871784078.jpeg"
"room_name" => "Suite Junior "Sunset""
"room_slug" => "suite-junior-sunset"
"room_description" => "Profitez des derniers rayons de soleil et admirez ce festival de couleurs depuis votre balcon, confortablement aménagé face au lagon. Cette suite aux volets blancs façon maison de bord de mer et au design lumineux, est en parfaite harmonie avec le décor tropical environnant. On y trouve un dressing au papier-peint fantaisiste. Une sublime salle de bain contemporaine avec sa douche à l'italienne, toujours équipée de nos produits signature LUX*. Et toute la technologie nécessaire pour vous sentir comme chez vous (bien que nous vous encouragions à déconnecter)."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1981
"adult_amount" => 2080
"children_amount" => 0
"basis_amount" => 2080
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
]
]
]
2 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 163
"room_picture" => "/uploads/rooms/163/6710960826b66410373728.jpg"
"room_name" => "Suite Junior Prestige"
"room_slug" => "suite-junior-prestige"
"room_description" => "Cette suite est conçue pour celles et ceux qui souhaitent vivre une expérience unique au rythme de l'île et se prélasser sous le soleil mauricien. Imaginez une sublime salle de bain contemporaine, avec sa douche tropicale extérieure en pierre volcanique et sa grande baignoire. Une terrasse donnant directement sur les jardins luxuriants, où vous pourrez bronzer ou lire un livre. Quant à l'aménagement intérieur, on y trouve des couleurs neutres, un linge de lit immaculé, des tapis tissés, un papier-peint invitant au voyage et des meubles en bois clair... Un design lumineux et rafraîchissant. Et bien sûr, de grandes portes coulissantes laissant entrer toute la douceur de la lumière naturelle."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1991
"adult_amount" => 2480
"children_amount" => 0
"basis_amount" => 2480
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 620
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 620
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 620
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 620
"kids_price" => 0
]
]
]
]
3 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 164
"room_picture" => "/uploads/rooms/164/671098a33e657664707855.jpg"
"room_name" => "Suite Junior Océan"
"room_slug" => "lux-le-morne-suite-junior-ocean"
"room_description" => "Admirez depuis votre bain moussant, toute la splendeur du lagon et des jardins tropicaux. Y a-t-il meilleur moyen pour se détendre ? De plus, la plage est à seulement quelques pas. Ces suites aux couleurs douces et lumineuses, offrent une sensation de légèreté. La jolie salle de bain dispose d’une baignoire contemporaine et d’une douche (équipée de nos produits signature LUX* bien entendu). Un design chic et serein composé de volets blancs façon maison de bord de mer, d'un linge de lit immaculé et de meubles en bois clairs. Quant à la terrasse confortablement aménagée ? Vous y passerez certainement du temps !"
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2001
"adult_amount" => 2760
"children_amount" => 0
"basis_amount" => 2760
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 690
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 690
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 690
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 690
"kids_price" => 0
]
]
]
]
4 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 165
"room_picture" => "/uploads/rooms/165/66693f75e437d053323712.jpeg"
"room_name" => "Suite Famille"
"room_slug" => "lux-le-morne-suite-famille"
"room_description" => "Des chambres spacieuses face à la mer, conçues pour accueillir une famille de voyageurs. Voyager en famille est un vrai bonheur ! Mais tout comme les parents, les enfants ont parfois besoin d’intimité. La Suite Famille offre deux chambres communicantes avec des lits King-size et deux salles de bains en marbre, dont une avec une douche tropicale, en plein air. Spacieuse, elle est idéale pour les grandes familles de voyageurs. Quant à la décoration, le design lumineux inspiré du style bord de mer chic et les couleurs neutres, vous feront vous sentir immédiatement apaisé, et comme chez vous. Vous avez un petit creux ? Vous trouverez de quoi vous régalez dans le Tropical Bar, votre minibar confectionné sur mesure et rempli tous les jours. Pour passer des moments de qualité en famille, la grande terrasse aménagée - avec vue sur la mer - est parfaite."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2011
"adult_amount" => 5240
"children_amount" => 0
"basis_amount" => 5240
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1310
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1310
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1310
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1310
"kids_price" => 0
]
]
]
]
]
]
1 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
"Update Stay Rooms results"
2 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
array:5 [
0 => App\DTO\RoomStayDTO {#8265
-marginRate: 20
-id: 161
-name: "Chambre Deluxe"
-slug: "lux-le-morne-chambre-deluxe"
-picture: "/uploads/rooms/161/66693f1e01c65014667173.jpeg"
-description: "Avec leur palette de couleurs neutres, du linge de lit immaculé, des volets blancs façon maison de bord de mer et des tapis tissés, ces chambres sont des petits bijoux ! Situées au rez-de-chaussé ou au 1er étage, les chambres deluxe sont aussi confortables que raffinées. Et attendez de voir notre Tropical bar, une jolie revisite du mini-bar ( 100% personnalisable). Alors préparez-vous un cocktail maison et installez-vous confortablement sur votre terrasse ou balcon privé, pour profiter du beau temps mauricien et de la vue sur les jardins tropicaux. Et si vous êtes plutôt du genre Wifi, climatisation et TV, nous avons aussi tout cela !"
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 179
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 460
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 460
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 460
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 460
"kids_price" => 0
]
]
"amount" => 1840
]
]
-totalRoomAmount: 1840.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#8637
-marginRate: 20
+extraId: 179
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1840.0
+totalStayAmountWoDiscount: 1840.0
+totalStayAmount: 1840.0
+finalAmountWoDiscount: 2208.0
+finalAmount: 2208.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#8640
-marginRate: 20
+extraId: 140
+name: "Suppléments repas Demi-pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 100
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 400
+kidsExtrasAmount: 0
+stayExtrasAmount: 400
+stayRoomAmount: 1840.0
+totalStayAmountWoDiscount: 2240.0
+totalStayAmount: 2240.0
+finalAmountWoDiscount: 2688.0
+finalAmount: 2688.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#8643
-marginRate: 20
+extraId: 141
+name: "Suppléments repas Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 180
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 720
+kidsExtrasAmount: 0
+stayExtrasAmount: 720
+stayRoomAmount: 1840.0
+totalStayAmountWoDiscount: 2560.0
+totalStayAmount: 2560.0
+finalAmountWoDiscount: 3072.0
+finalAmount: 3072.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#8644
-marginRate: 20
+extraId: 143
+name: "Suppléments Formule "Tout inclus""
+description: null
+stayTotalNights: 4
+dailyAdults: 260
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1040
+kidsExtrasAmount: 0
+stayExtrasAmount: 1040
+stayRoomAmount: 1840.0
+totalStayAmountWoDiscount: 2880.0
+totalStayAmount: 2880.0
+finalAmountWoDiscount: 3456.0
+finalAmount: 3456.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
1 => App\DTO\RoomStayDTO {#8593
-marginRate: 20
-id: 162
-name: "Suite Junior "Sunset""
-slug: "suite-junior-sunset"
-picture: "/uploads/rooms/162/6710983375dca871784078.jpeg"
-description: "Profitez des derniers rayons de soleil et admirez ce festival de couleurs depuis votre balcon, confortablement aménagé face au lagon. Cette suite aux volets blancs façon maison de bord de mer et au design lumineux, est en parfaite harmonie avec le décor tropical environnant. On y trouve un dressing au papier-peint fantaisiste. Une sublime salle de bain contemporaine avec sa douche à l'italienne, toujours équipée de nos produits signature LUX*. Et toute la technologie nécessaire pour vous sentir comme chez vous (bien que nous vous encouragions à déconnecter)."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 179
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
]
"amount" => 2080
]
]
-totalRoomAmount: 2080.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#8645
-marginRate: 20
+extraId: 179
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2080.0
+totalStayAmountWoDiscount: 2080.0
+totalStayAmount: 2080.0
+finalAmountWoDiscount: 2496.0
+finalAmount: 2496.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#8646
-marginRate: 20
+extraId: 140
+name: "Suppléments repas Demi-pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 100
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 400
+kidsExtrasAmount: 0
+stayExtrasAmount: 400
+stayRoomAmount: 2080.0
+totalStayAmountWoDiscount: 2480.0
+totalStayAmount: 2480.0
+finalAmountWoDiscount: 2976.0
+finalAmount: 2976.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#8647
-marginRate: 20
+extraId: 141
+name: "Suppléments repas Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 180
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 720
+kidsExtrasAmount: 0
+stayExtrasAmount: 720
+stayRoomAmount: 2080.0
+totalStayAmountWoDiscount: 2800.0
+totalStayAmount: 2800.0
+finalAmountWoDiscount: 3360.0
+finalAmount: 3360.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#8648
-marginRate: 20
+extraId: 143
+name: "Suppléments Formule "Tout inclus""
+description: null
+stayTotalNights: 4
+dailyAdults: 260
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1040
+kidsExtrasAmount: 0
+stayExtrasAmount: 1040
+stayRoomAmount: 2080.0
+totalStayAmountWoDiscount: 3120.0
+totalStayAmount: 3120.0
+finalAmountWoDiscount: 3744.0
+finalAmount: 3744.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
2 => App\DTO\RoomStayDTO {#8614
-marginRate: 20
-id: 163
-name: "Suite Junior Prestige"
-slug: "suite-junior-prestige"
-picture: "/uploads/rooms/163/6710960826b66410373728.jpg"
-description: "Cette suite est conçue pour celles et ceux qui souhaitent vivre une expérience unique au rythme de l'île et se prélasser sous le soleil mauricien. Imaginez une sublime salle de bain contemporaine, avec sa douche tropicale extérieure en pierre volcanique et sa grande baignoire. Une terrasse donnant directement sur les jardins luxuriants, où vous pourrez bronzer ou lire un livre. Quant à l'aménagement intérieur, on y trouve des couleurs neutres, un linge de lit immaculé, des tapis tissés, un papier-peint invitant au voyage et des meubles en bois clair... Un design lumineux et rafraîchissant. Et bien sûr, de grandes portes coulissantes laissant entrer toute la douceur de la lumière naturelle."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 179
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 620
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 620
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 620
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 620
"kids_price" => 0
]
]
"amount" => 2480
]
]
-totalRoomAmount: 2480.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#8649
-marginRate: 20
+extraId: 179
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2480.0
+totalStayAmountWoDiscount: 2480.0
+totalStayAmount: 2480.0
+finalAmountWoDiscount: 2976.0
+finalAmount: 2976.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#8650
-marginRate: 20
+extraId: 140
+name: "Suppléments repas Demi-pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 100
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 400
+kidsExtrasAmount: 0
+stayExtrasAmount: 400
+stayRoomAmount: 2480.0
+totalStayAmountWoDiscount: 2880.0
+totalStayAmount: 2880.0
+finalAmountWoDiscount: 3456.0
+finalAmount: 3456.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#8651
-marginRate: 20
+extraId: 141
+name: "Suppléments repas Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 180
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 720
+kidsExtrasAmount: 0
+stayExtrasAmount: 720
+stayRoomAmount: 2480.0
+totalStayAmountWoDiscount: 3200.0
+totalStayAmount: 3200.0
+finalAmountWoDiscount: 3840.0
+finalAmount: 3840.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#8652
-marginRate: 20
+extraId: 143
+name: "Suppléments Formule "Tout inclus""
+description: null
+stayTotalNights: 4
+dailyAdults: 260
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1040
+kidsExtrasAmount: 0
+stayExtrasAmount: 1040
+stayRoomAmount: 2480.0
+totalStayAmountWoDiscount: 3520.0
+totalStayAmount: 3520.0
+finalAmountWoDiscount: 4224.0
+finalAmount: 4224.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
3 => App\DTO\RoomStayDTO {#8613
-marginRate: 20
-id: 164
-name: "Suite Junior Océan"
-slug: "lux-le-morne-suite-junior-ocean"
-picture: "/uploads/rooms/164/671098a33e657664707855.jpg"
-description: "Admirez depuis votre bain moussant, toute la splendeur du lagon et des jardins tropicaux. Y a-t-il meilleur moyen pour se détendre ? De plus, la plage est à seulement quelques pas. Ces suites aux couleurs douces et lumineuses, offrent une sensation de légèreté. La jolie salle de bain dispose d’une baignoire contemporaine et d’une douche (équipée de nos produits signature LUX* bien entendu). Un design chic et serein composé de volets blancs façon maison de bord de mer, d'un linge de lit immaculé et de meubles en bois clairs. Quant à la terrasse confortablement aménagée ? Vous y passerez certainement du temps !"
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 179
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 690
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 690
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 690
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 690
"kids_price" => 0
]
]
"amount" => 2760
]
]
-totalRoomAmount: 2760.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#8653
-marginRate: 20
+extraId: 179
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2760.0
+totalStayAmountWoDiscount: 2760.0
+totalStayAmount: 2760.0
+finalAmountWoDiscount: 3312.0
+finalAmount: 3312.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#8654
-marginRate: 20
+extraId: 140
+name: "Suppléments repas Demi-pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 100
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 400
+kidsExtrasAmount: 0
+stayExtrasAmount: 400
+stayRoomAmount: 2760.0
+totalStayAmountWoDiscount: 3160.0
+totalStayAmount: 3160.0
+finalAmountWoDiscount: 3792.0
+finalAmount: 3792.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#8655
-marginRate: 20
+extraId: 141
+name: "Suppléments repas Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 180
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 720
+kidsExtrasAmount: 0
+stayExtrasAmount: 720
+stayRoomAmount: 2760.0
+totalStayAmountWoDiscount: 3480.0
+totalStayAmount: 3480.0
+finalAmountWoDiscount: 4176.0
+finalAmount: 4176.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#8656
-marginRate: 20
+extraId: 143
+name: "Suppléments Formule "Tout inclus""
+description: null
+stayTotalNights: 4
+dailyAdults: 260
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1040
+kidsExtrasAmount: 0
+stayExtrasAmount: 1040
+stayRoomAmount: 2760.0
+totalStayAmountWoDiscount: 3800.0
+totalStayAmount: 3800.0
+finalAmountWoDiscount: 4560.0
+finalAmount: 4560.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
4 => App\DTO\RoomStayDTO {#8591
-marginRate: 20
-id: 165
-name: "Suite Famille"
-slug: "lux-le-morne-suite-famille"
-picture: "/uploads/rooms/165/66693f75e437d053323712.jpeg"
-description: "Des chambres spacieuses face à la mer, conçues pour accueillir une famille de voyageurs. Voyager en famille est un vrai bonheur ! Mais tout comme les parents, les enfants ont parfois besoin d’intimité. La Suite Famille offre deux chambres communicantes avec des lits King-size et deux salles de bains en marbre, dont une avec une douche tropicale, en plein air. Spacieuse, elle est idéale pour les grandes familles de voyageurs. Quant à la décoration, le design lumineux inspiré du style bord de mer chic et les couleurs neutres, vous feront vous sentir immédiatement apaisé, et comme chez vous. Vous avez un petit creux ? Vous trouverez de quoi vous régalez dans le Tropical Bar, votre minibar confectionné sur mesure et rempli tous les jours. Pour passer des moments de qualité en famille, la grande terrasse aménagée - avec vue sur la mer - est parfaite."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 179
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1310
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1310
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1310
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1310
"kids_price" => 0
]
]
"amount" => 5240
]
]
-totalRoomAmount: 5240.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#8657
-marginRate: 20
+extraId: 179
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 5240.0
+totalStayAmountWoDiscount: 5240.0
+totalStayAmount: 5240.0
+finalAmountWoDiscount: 6288.0
+finalAmount: 6288.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#8658
-marginRate: 20
+extraId: 140
+name: "Suppléments repas Demi-pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 100
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 400
+kidsExtrasAmount: 0
+stayExtrasAmount: 400
+stayRoomAmount: 5240.0
+totalStayAmountWoDiscount: 5640.0
+totalStayAmount: 5640.0
+finalAmountWoDiscount: 6768.0
+finalAmount: 6768.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#8659
-marginRate: 20
+extraId: 141
+name: "Suppléments repas Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 180
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 720
+kidsExtrasAmount: 0
+stayExtrasAmount: 720
+stayRoomAmount: 5240.0
+totalStayAmountWoDiscount: 5960.0
+totalStayAmount: 5960.0
+finalAmountWoDiscount: 7152.0
+finalAmount: 7152.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#8660
-marginRate: 20
+extraId: 143
+name: "Suppléments Formule "Tout inclus""
+description: null
+stayTotalNights: 4
+dailyAdults: 260
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1040
+kidsExtrasAmount: 0
+stayExtrasAmount: 1040
+stayRoomAmount: 5240.0
+totalStayAmountWoDiscount: 6280.0
+totalStayAmount: 6280.0
+finalAmountWoDiscount: 7536.0
+finalAmount: 7536.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
]
1 in
RoomStayCalculation.php
line 274:
{
$offers_eligibled = [];
if ($this->debug) {
dump('All available offers of the hotel', $offers);
}
foreach ($offers as $key => $offer) {
"All available offers of the hotel"
2 in
RoomStayCalculation.php
line 274:
{
$offers_eligibled = [];
if ($this->debug) {
dump('All available offers of the hotel', $offers);
}
foreach ($offers as $key => $offer) {
Doctrine\Common\Collections\ArrayCollection {#8827
-elements: array:1 [
0 => App\Entity\Offers {#8701
-id: 257
-title: "FABULOUS OFFER 5%"
-type: "Special"
-hotel: App\Entity\Hotels {#1290
-id: 26
-name: "LUX Le Morne"
-description: "Niché au pied de la majestueuse montagne du Morne, face au lagon, LUX* Le Morne est l'endroit rêvé pour admirer les plus beaux couchers de soleil. Ce resort au design chic et serein est une véritable invitation à la douceur de vivre sur une île. La faune et la flore locales sont omniprésentes dans ce décor des plus spectaculaires, où seulement quelques pas séparent votre lit d'une grande plage de sable blanc."
-website: "https://www.luxresorts.com/fr/maurice/hotel/luxlemorne"
-stars: 5
-youtubeVideoId: "qAjIAo-KV1U"
-phone: "+230 401 4000"
-email: "luxlemorne@luxresorts.com"
-active: true
-gmapUrl: "<iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3738.1987814743193!2d57.30895731217892!3d-20.457027180973956!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x217c6cf1d228212b%3A0x98e314dcba627bf3!2sLUX%20Le%20Morne!5e0!3m2!1sfr!2sfr!4v1718969683176!5m2!1sfr!2sfr" width="100%" height="600" style="border:0;" allowfullscreen="" loading="lazy" referrerpolicy="no-referrer-when-downgrade"></iframe>"
-zone: "Sud-Ouest"
-createdAt: DateTimeImmutable @1714145854 {#1286
date: 2024-04-26 15:37:34.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1732097298 {#1287
date: 2024-11-20 10:08:18.0 UTC (+00:00)
}
-rooms: Doctrine\ORM\PersistentCollection {#1291
#collection: Doctrine\Common\Collections\ArrayCollection {#1292
-elements: array:5 [
0 => App\Entity\Rooms {#2198
-id: 161
-name: "Chambre Deluxe"
-description: "Avec leur palette de couleurs neutres, du linge de lit immaculé, des volets blancs façon maison de bord de mer et des tapis tissés, ces chambres sont des petits bijoux ! Situées au rez-de-chaussé ou au 1er étage, les chambres deluxe sont aussi confortables que raffinées. Et attendez de voir notre Tropical bar, une jolie revisite du mini-bar ( 100% personnalisable). Alors préparez-vous un cocktail maison et installez-vous confortablement sur votre terrasse ou balcon privé, pour profiter du beau temps mauricien et de la vue sur les jardins tropicaux. Et si vous êtes plutôt du genre Wifi, climatisation et TV, nous avons aussi tout cela !"
-active: true
-hotel: App\Entity\Hotels {#1290}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#8526
-elements: array:1 [
0 => App\Entity\RoomPrices {#2205
-id: 1971
-title: "Chambre Deluxe - Shoulder (copie)"
-room: App\Entity\Rooms {#2198}
-quantity: null
-stayStartedAt: DateTimeImmutable @1737201600 {#2194
date: 2025-01-18 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746014400 {#2195
date: 2025-04-30 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2196
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2197
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "460.00"
-singleOccupancy: "440.00"
-tripleOccupancy: "160.00"
-active: true
-extraBaby: null
-extraChild: 50.0
-extraTeen: 70.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2199
#collection: Doctrine\Common\Collections\ArrayCollection {#2200
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2198}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2201
#collection: Doctrine\Common\Collections\ArrayCollection {#2202
-elements: array:9 [
0 => App\Entity\RoomCapacities {#3595
-id: 1993
-room: App\Entity\Rooms {#2198}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3594
-id: 1994
-room: App\Entity\Rooms {#2198}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3597
-id: 1995
-room: App\Entity\Rooms {#2198}
-adults: 3
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3596
-id: 1997
-room: App\Entity\Rooms {#2198}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3599
-id: 1999
-room: App\Entity\Rooms {#2198}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3598
-id: 2001
-room: App\Entity\Rooms {#2198}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3601
-id: 2002
-room: App\Entity\Rooms {#2198}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3600
-id: 2003
-room: App\Entity\Rooms {#2198}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#3602
-id: 2004
-room: App\Entity\Rooms {#2198}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:9 [ …9]
-owner: App\Entity\Rooms {#2198}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2192
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1734458673 {#2193
date: 2024-12-17 18:04:33.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "66693f1e01c65014667173.jpeg"
-gallery: App\Entity\Galleries {#2206
-id: 183
-hotel: null
-room: App\Entity\Rooms {#2198}
-images: Doctrine\ORM\PersistentCollection {#2207
#collection: Doctrine\Common\Collections\ArrayCollection {#2208
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2206}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Lux le morne Chambre Deluxe"
}
-mediaDirSlug: "161"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "lux-le-morne-chambre-deluxe"
}
1 => App\Entity\Rooms {#2215
-id: 162
-name: "Suite Junior "Sunset""
-description: "Profitez des derniers rayons de soleil et admirez ce festival de couleurs depuis votre balcon, confortablement aménagé face au lagon. Cette suite aux volets blancs façon maison de bord de mer et au design lumineux, est en parfaite harmonie avec le décor tropical environnant. On y trouve un dressing au papier-peint fantaisiste. Une sublime salle de bain contemporaine avec sa douche à l'italienne, toujours équipée de nos produits signature LUX*. Et toute la technologie nécessaire pour vous sentir comme chez vous (bien que nous vous encouragions à déconnecter)."
-active: true
-hotel: App\Entity\Hotels {#1290}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#8515
-elements: array:1 [
0 => App\Entity\RoomPrices {#2222
-id: 1981
-title: "Suite Junior "Sunset" Moyenne (copie)"
-room: App\Entity\Rooms {#2215}
-quantity: null
-stayStartedAt: DateTimeImmutable @1737201600 {#2211
date: 2025-01-18 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746014400 {#2212
date: 2025-04-30 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2213
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2214
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "520.00"
-singleOccupancy: "500.00"
-tripleOccupancy: "0.00"
-active: true
-extraBaby: null
-extraChild: 50.0
-extraTeen: 70.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2216
#collection: Doctrine\Common\Collections\ArrayCollection {#2217
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2215}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2218
#collection: Doctrine\Common\Collections\ArrayCollection {#2219
-elements: array:2 [
0 => App\Entity\RoomCapacities {#3589
-id: 2005
-room: App\Entity\Rooms {#2215}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3588
-id: 2006
-room: App\Entity\Rooms {#2215}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:2 [ …2]
-owner: App\Entity\Rooms {#2215}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2209
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672839 {#2210
date: 2024-10-23 08:40:39.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "6710983375dca871784078.jpeg"
-gallery: App\Entity\Galleries {#2223
-id: 34
-hotel: null
-room: App\Entity\Rooms {#2215}
-images: Doctrine\ORM\PersistentCollection {#2224
#collection: Doctrine\Common\Collections\ArrayCollection {#2225
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2223}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Le Morne Suite junior sunset"
}
-mediaDirSlug: "162"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "suite-junior-sunset"
}
2 => App\Entity\Rooms {#2232
-id: 163
-name: "Suite Junior Prestige"
-description: "Cette suite est conçue pour celles et ceux qui souhaitent vivre une expérience unique au rythme de l'île et se prélasser sous le soleil mauricien. Imaginez une sublime salle de bain contemporaine, avec sa douche tropicale extérieure en pierre volcanique et sa grande baignoire. Une terrasse donnant directement sur les jardins luxuriants, où vous pourrez bronzer ou lire un livre. Quant à l'aménagement intérieur, on y trouve des couleurs neutres, un linge de lit immaculé, des tapis tissés, un papier-peint invitant au voyage et des meubles en bois clair... Un design lumineux et rafraîchissant. Et bien sûr, de grandes portes coulissantes laissant entrer toute la douceur de la lumière naturelle."
-active: true
-hotel: App\Entity\Hotels {#1290}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#8544
-elements: array:1 [
0 => App\Entity\RoomPrices {#2239
-id: 1991
-title: "Suite Junior Prestige Moyenne (copie)"
-room: App\Entity\Rooms {#2232}
-quantity: null
-stayStartedAt: DateTimeImmutable @1737201600 {#2228
date: 2025-01-18 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746014400 {#2229
date: 2025-04-30 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2230
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2231
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "620.00"
-singleOccupancy: "600.00"
-tripleOccupancy: "0.00"
-active: true
-extraBaby: null
-extraChild: 50.0
-extraTeen: 70.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2233
#collection: Doctrine\Common\Collections\ArrayCollection {#2234
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2232}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2235
#collection: Doctrine\Common\Collections\ArrayCollection {#2236
-elements: array:6 [
0 => App\Entity\RoomCapacities {#3581
-id: 2007
-room: App\Entity\Rooms {#2232}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3582
-id: 2008
-room: App\Entity\Rooms {#2232}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3584
-id: 2009
-room: App\Entity\Rooms {#2232}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3585
-id: 2010
-room: App\Entity\Rooms {#2232}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3586
-id: 3483
-room: App\Entity\Rooms {#2232}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3587
-id: 3484
-room: App\Entity\Rooms {#2232}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:6 [ …6]
-owner: App\Entity\Rooms {#2232}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2226
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672839 {#2227
date: 2024-10-23 08:40:39.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "6710960826b66410373728.jpg"
-gallery: App\Entity\Galleries {#2240
-id: 35
-hotel: null
-room: App\Entity\Rooms {#2232}
-images: Doctrine\ORM\PersistentCollection {#2241
#collection: Doctrine\Common\Collections\ArrayCollection {#2242
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2240}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Le Morne Suite junior prestige"
}
-mediaDirSlug: "163"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "suite-junior-prestige"
}
3 => App\Entity\Rooms {#2249
-id: 164
-name: "Suite Junior Océan"
-description: "Admirez depuis votre bain moussant, toute la splendeur du lagon et des jardins tropicaux. Y a-t-il meilleur moyen pour se détendre ? De plus, la plage est à seulement quelques pas. Ces suites aux couleurs douces et lumineuses, offrent une sensation de légèreté. La jolie salle de bain dispose d’une baignoire contemporaine et d’une douche (équipée de nos produits signature LUX* bien entendu). Un design chic et serein composé de volets blancs façon maison de bord de mer, d'un linge de lit immaculé et de meubles en bois clairs. Quant à la terrasse confortablement aménagée ? Vous y passerez certainement du temps !"
-active: true
-hotel: App\Entity\Hotels {#1290}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#8565
-elements: array:1 [
0 => App\Entity\RoomPrices {#2256
-id: 2001
-title: "Suite Junior Océan Moyenne"
-room: App\Entity\Rooms {#2249}
-quantity: null
-stayStartedAt: DateTimeImmutable @1737201600 {#2245
date: 2025-01-18 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746014400 {#2246
date: 2025-04-30 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2247
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2248
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "690.00"
-singleOccupancy: "670.00"
-tripleOccupancy: "230.00"
-active: true
-extraBaby: null
-extraChild: 50.0
-extraTeen: 70.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2250
#collection: Doctrine\Common\Collections\ArrayCollection {#2251
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2249}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2252
#collection: Doctrine\Common\Collections\ArrayCollection {#2253
-elements: array:8 [
0 => App\Entity\RoomCapacities {#3578
-id: 2011
-room: App\Entity\Rooms {#2249}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3591
-id: 2012
-room: App\Entity\Rooms {#2249}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3503
-id: 2013
-room: App\Entity\Rooms {#2249}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3575
-id: 2014
-room: App\Entity\Rooms {#2249}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3574
-id: 2015
-room: App\Entity\Rooms {#2249}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3542
-id: 2016
-room: App\Entity\Rooms {#2249}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3540
-id: 2017
-room: App\Entity\Rooms {#2249}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3580
-id: 2018
-room: App\Entity\Rooms {#2249}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:8 [ …8]
-owner: App\Entity\Rooms {#2249}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2243
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1734458725 {#2244
date: 2024-12-17 18:05:25.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "671098a33e657664707855.jpg"
-gallery: App\Entity\Galleries {#2257
-id: 36
-hotel: null
-room: App\Entity\Rooms {#2249}
-images: Doctrine\ORM\PersistentCollection {#2258
#collection: Doctrine\Common\Collections\ArrayCollection {#2259
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2257}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Le Morne Suite junior ocean"
}
-mediaDirSlug: "164"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "lux-le-morne-suite-junior-ocean"
}
4 => App\Entity\Rooms {#2266
-id: 165
-name: "Suite Famille"
-description: "Des chambres spacieuses face à la mer, conçues pour accueillir une famille de voyageurs. Voyager en famille est un vrai bonheur ! Mais tout comme les parents, les enfants ont parfois besoin d’intimité. La Suite Famille offre deux chambres communicantes avec des lits King-size et deux salles de bains en marbre, dont une avec une douche tropicale, en plein air. Spacieuse, elle est idéale pour les grandes familles de voyageurs. Quant à la décoration, le design lumineux inspiré du style bord de mer chic et les couleurs neutres, vous feront vous sentir immédiatement apaisé, et comme chez vous. Vous avez un petit creux ? Vous trouverez de quoi vous régalez dans le Tropical Bar, votre minibar confectionné sur mesure et rempli tous les jours. Pour passer des moments de qualité en famille, la grande terrasse aménagée - avec vue sur la mer - est parfaite."
-active: true
-hotel: App\Entity\Hotels {#1290}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#8586
-elements: array:1 [
0 => App\Entity\RoomPrices {#2273
-id: 2011
-title: "Suite Famille - Intermédiaire (copie)"
-room: App\Entity\Rooms {#2266}
-quantity: null
-stayStartedAt: DateTimeImmutable @1737201600 {#2262
date: 2025-01-18 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746014400 {#2263
date: 2025-04-30 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2264
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2265
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "1310.00"
-singleOccupancy: "1310.00"
-tripleOccupancy: "130.00"
-active: true
-extraBaby: null
-extraChild: 50.0
-extraTeen: 70.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2267
#collection: Doctrine\Common\Collections\ArrayCollection {#2268
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2266}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2269
#collection: Doctrine\Common\Collections\ArrayCollection {#2270
-elements: array:16 [
0 => App\Entity\RoomCapacities {#3619
-id: 2019
-room: App\Entity\Rooms {#2266}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3606
-id: 2020
-room: App\Entity\Rooms {#2266}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3615
-id: 2021
-room: App\Entity\Rooms {#2266}
-adults: 3
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3614
-id: 2022
-room: App\Entity\Rooms {#2266}
-adults: 3
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3613
-id: 2023
-room: App\Entity\Rooms {#2266}
-adults: 4
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3612
-id: 2024
-room: App\Entity\Rooms {#2266}
-adults: 4
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3611
-id: 2025
-room: App\Entity\Rooms {#2266}
-adults: 3
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3610
-id: 2026
-room: App\Entity\Rooms {#2266}
-adults: 3
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#3609
-id: 2027
-room: App\Entity\Rooms {#2266}
-adults: 3
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#3616
-id: 2028
-room: App\Entity\Rooms {#2266}
-adults: 2
-teens: 2
-children: null
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#3617
-id: 2029
-room: App\Entity\Rooms {#2266}
-adults: 2
-teens: null
-children: 3
-babies: null
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#3630
-id: 2030
-room: App\Entity\Rooms {#2266}
-adults: 2
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#3628
-id: 2031
-room: App\Entity\Rooms {#2266}
-adults: 2
-teens: null
-children: 3
-babies: 1
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#3629
-id: 2032
-room: App\Entity\Rooms {#2266}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
14 => App\Entity\RoomCapacities {#3626
-id: 2033
-room: App\Entity\Rooms {#2266}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
15 => App\Entity\RoomCapacities {#3627
-id: 2034
-room: App\Entity\Rooms {#2266}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:16 [ …16]
-owner: App\Entity\Rooms {#2266}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2260
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1734458753 {#2261
date: 2024-12-17 18:05:53.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "66693f75e437d053323712.jpeg"
-gallery: App\Entity\Galleries {#2274
-id: 184
-hotel: null
-room: App\Entity\Rooms {#2266}
-images: Doctrine\ORM\PersistentCollection {#2275
#collection: Doctrine\Common\Collections\ArrayCollection {#2276
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2274}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Lux le morne Suite Famille"
}
-mediaDirSlug: "165"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "lux-le-morne-suite-famille"
}
]
}
#initialized: true
-snapshot: array:5 [ …5]
-owner: App\Entity\Hotels {#1290}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#880 …}
-backRefFieldName: "hotel"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-address: "Route Côtière, Le Morne, Île Maurice"
-checkInTime: "14:00"
-checkOutTime: "11:00"
-babyAgeMax: "6"
-childAgeMax: "12"
-teenAgeMax: "18"
-extraCharges: Doctrine\ORM\PersistentCollection {#1293
#collection: Doctrine\Common\Collections\ArrayCollection {#1294
-elements: array:4 [
0 => App\Entity\ExtraCharges {#8634
-id: 140
-title: "Suppléments repas Demi-pension"
-description: null
-adultExtra: 50.0
-babyExtra: null
-childExtra: 25.0
-teenExtra: 50.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1290}
}
1 => App\Entity\ExtraCharges {#8607
-id: 141
-title: "Suppléments repas Pension complète"
-description: null
-adultExtra: 90.0
-babyExtra: null
-childExtra: 45.0
-teenExtra: 90.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1290}
}
2 => App\Entity\ExtraCharges {#8633
-id: 143
-title: "Suppléments Formule "Tout inclus""
-description: null
-adultExtra: 130.0
-babyExtra: null
-childExtra: 65.0
-teenExtra: 98.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1290}
}
3 => App\Entity\ExtraCharges {#8639
-id: 179
-title: "BASE - PETIT DEJEUNER"
-description: null
-adultExtra: 0.0
-babyExtra: 0.0
-childExtra: 0.0
-teenExtra: 0.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: true
-minNights: null
-hotel: App\Entity\Hotels {#1290}
}
]
}
#initialized: true
-snapshot: array:4 [ …4]
-owner: App\Entity\Hotels {#1290}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#876 …}
-backRefFieldName: "hotel"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-imageFile: null
-featuredImage: "66965c2c8504f097523476.jpg"
-gallery: App\Entity\Galleries {#1297
-id: 33
-hotel: App\Entity\Hotels {#1290}
-room: null
-images: Doctrine\ORM\PersistentCollection {#1298
#collection: Doctrine\Common\Collections\ArrayCollection {#1299
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1297}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Hotel Le Morne"
}
-mediaDirSlug: null
-offers: Doctrine\Common\Collections\ArrayCollection {#8827}
-highlighted: true
-services: array:1 [
0 => ""
]
-hlStartAt: DateTimeImmutable @1732060800 {#1288
date: 2024-11-20 00:00:00.0 UTC (+00:00)
}
-hlEndAt: DateTimeImmutable @1732406400 {#1289
date: 2024-11-24 00:00:00.0 UTC (+00:00)
}
-slug: "lux-le-morne"
}
-description: null
-stayStartAt: DateTimeImmutable @1740268800 {#8694
date: 2025-02-23 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1744416000 {#8665
date: 2025-04-12 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1739664000 {#8693
date: 2025-02-16 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1744675200 {#8699
date: 2025-04-15 00:00:00.0 UTC (+00:00)
}
-reference: "FABULOUS OFFER 5%"
-minNights: null
-maxNights: null
-earlyBookingDays: null
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#8702
#collection: Doctrine\Common\Collections\ArrayCollection {#8703
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#8701}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1075 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 5
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#8704
#collection: Doctrine\Common\Collections\ArrayCollection {#8705
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#8701}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1081 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-offers: Doctrine\ORM\PersistentCollection {#8706
#collection: Doctrine\Common\Collections\ArrayCollection {#8707
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#8701}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1085 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#8708
#collection: Doctrine\Common\Collections\ArrayCollection {#8709
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#8701}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1087 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#8710
#collection: Doctrine\Common\Collections\ArrayCollection {#8711
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#8701}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1093 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-extrasDiscount: null
-priority: 1
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
]
}
1 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
"Step 1. Offres valides : "
2 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
array:1 [
0 => App\DTO\PromotionDTO {#8906
-debug: true
+id: 257
+title: "FABULOUS OFFER 5%"
+description: null
+type: "Special"
+reference: "FABULOUS OFFER 5%"
+from: DateTimeImmutable @1740268800 {#8694
date: 2025-02-23 00:00:00.0 UTC (+00:00)
}
+to: DateTimeImmutable @1744416000 {#8665
date: 2025-04-12 00:00:00.0 UTC (+00:00)
}
+earlyBookingDays: null
+minNights: null
+maxNights: null
+discountRate: 5
+discountFamilyRates: []
+combinableRate: null
+priority: 1
+extrasDiscountRate: null
+isAllRooms: true
+isCombinable: false
+selectedRoomsIDs: []
+selectedExtrasIDs: []
+selectedOffersIDs: []
+selectedExtrasDiscountIDs: []
}
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Maradiva Villas Resort & Spa - Chambre : #28 - Beachfront Luxury Suite Pool Villa has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#9080
+rpId: 2314
+adultsPrice: 1885
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1885
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1885
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1885
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1885
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Maradiva Villas Resort & Spa - Chambre : #30 - Exclusive Suite Pool Villa has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#9101
+rpId: 2335
+adultsPrice: 3200
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 3200
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 3200
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 3200
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 3200
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Maradiva Villas Resort & Spa - Chambre : #31 - Presidential Suite Pool Villa has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#9122
+rpId: 2342
+adultsPrice: 6800
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 6800
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 6800
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 6800
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 6800
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Maradiva Villas Resort & Spa - Chambre : #228 - Family Luxury Suite Pool Villa has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#9143
+rpId: 2321
+adultsPrice: 2700
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 2700
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 2700
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 2700
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 2700
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Maradiva Villas Resort & Spa - Chambre : #229 - Beachfront Family Suite Pool Villa has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#9164
+rpId: 2328
+adultsPrice: 2900
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 2900
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 2900
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 2900
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 2900
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Maradiva Villas Resort & Spa - Chambre : #26 - Luxury Suite Pool Villa has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#9185
+rpId: 2307
+adultsPrice: 500
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 500
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 500
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 500
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 500
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
"Update Stay Rooms - Chambers Prices"
2 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
array:1 [
0 => array:6 [
0 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
"room_id" => 28
"room_picture" => "/uploads/rooms/28/666bd1f381d01384759923.jpeg"
"room_name" => "Beachfront Luxury Suite Pool Villa"
"room_slug" => "beachfront-luxury-suite-pool-villa"
"room_description" => """
Avec une vue dégagée sur l’océan scintillant à la couleur bleu turquoise et un accès direct à la plage, ces villas de 163 m² \r\n
sont des refuges idylliques pour vos escapades romantiques. \r\n
Chacune dispose d’une piscine chauffée de 15 m² et d’une terrasse extérieure pour vos repas en plein air. \r\n
L’harmonie règne entre sentiment d’intimité, espace et connexion avec la nature de l’île offrant ainsi un pur moment de tranquillité.
"""
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2314
"adult_amount" => 7540
"children_amount" => 0
"basis_amount" => 7540
"mandatoryExtraId" => null
"default_extra_label" => "DEMI PENSION"
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1885
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1885
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1885
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1885
"kids_price" => 0
]
]
]
]
1 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 30
"room_picture" => "/uploads/rooms/30/666bd21696018184581499.jpeg"
"room_name" => "Exclusive Suite Pool Villa"
"room_slug" => "exclusive-suite-pool-villa"
"room_description" => """
Ces villas de 220 m² sont de spacieux refuges exclusifs, où règnent élégance et espace. \r\n
La beauté du jardin privatif et les vues imprenables sur l’océan Indien en font un lieu privilégié pour une véritable immersion dans la nature – une escapade tropicale. \r\n
À l’intérieur, une chambre luxueuse et une salle de bains attenante sont associées à de vastes espaces de vie. En extérieur, vous trouverez une terrasse, lieu idéal pour manger en plein air, se prélasser et nager dans la piscine à débordement privée et chauffée de 25 m².
"""
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2335
"adult_amount" => 12800
"children_amount" => 0
"basis_amount" => 12800
"mandatoryExtraId" => null
"default_extra_label" => "DEMI PENSION"
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 3200
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 3200
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 3200
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 3200
"kids_price" => 0
]
]
]
]
2 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 31
"room_picture" => "/uploads/rooms/31/67189c4e119f0304396048.jpg"
"room_name" => "Presidential Suite Pool Villa"
"room_slug" => "presidential-suite-pool-villa"
"room_description" => """
Découvrez la quintessence du luxe et de l’espace dans nos deux plus grandes villas offrant ainsi une expérience inégalée sur cette île captivante. \r\n
D’une superficie de 345 m² avec une piscine privée et chauffée de 56 m², ces spacieuses villas sont un havre de paix avec accès direct sur la plage. Alors qu’une magnifique villa bénéficie d’une exclusivité totale, l’autre offre la splendeur des panoramas océaniques, et pourtant toutes deux sont gracieusement installées sur les rivages sablonneux. \r\n
Les villas disposent de deux chambres avec salles de bains attenantes, d’un vaste espace de vie équipé d’un home cinéma, d’une kitchenette privée et d’un service de majordome dédié 24h/24.
"""
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2342
"adult_amount" => 27200
"children_amount" => 0
"basis_amount" => 27200
"mandatoryExtraId" => null
"default_extra_label" => "DEMI PENSION"
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 6800
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 6800
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 6800
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 6800
"kids_price" => 0
]
]
]
]
3 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 228
"room_picture" => "/uploads/rooms/228/673362dd96efe221040397.jpg"
"room_name" => "Family Luxury Suite Pool Villa"
"room_slug" => "family-luxury-suite-pool-villa"
"room_description" => "Dotées de deux chambres pour accueillir les familles, ces villas de 163 m2 avec vue sur un jardin luxuriant et une piscine chauffée de 15 m2 sont de délicieux sanctuaires privés où il fait bon vivre ensemble."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2321
"adult_amount" => 10800
"children_amount" => 0
"basis_amount" => 10800
"mandatoryExtraId" => null
"default_extra_label" => "DEMI PENSION"
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 2700
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 2700
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 2700
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 2700
"kids_price" => 0
]
]
]
]
4 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 229
"room_picture" => "/uploads/rooms/229/673362b6c357e769644110.jpeg"
"room_name" => "Beachfront Family Suite Pool Villa"
"room_slug" => "beachfront-family-suite-pool-villa"
"room_description" => "Avec la deuxième chambre à l'intérieur et la piscine chauffée de 15 m2 à l'extérieur, vous disposez de tout l'espace et de l'intimité dont vous avez besoin pour vous épanouir ensemble."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2328
"adult_amount" => 11600
"children_amount" => 0
"basis_amount" => 11600
"mandatoryExtraId" => null
"default_extra_label" => "DEMI PENSION"
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 2900
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 2900
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 2900
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 2900
"kids_price" => 0
]
]
]
]
5 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 26
"room_picture" => "/uploads/rooms/26/666bd173a341b028051667.jpeg"
"room_name" => "Luxury Suite Pool Villa"
"room_slug" => "luxury-suite-pool-villa"
"room_description" => """
Mélangeant esthétisme traditionnel et contemporain, ces élégantes villas de 163 m² disposent d’une piscine chauffée de 15 m² et donnent sur nos jardins luxuriants. \r\n
Conçues pour la vie intérieure comme en extérieure, elles sont spacieuses, aérées et raffinées mais non ostentatoires. Il s’en dégage une aura authentique qui présage un séjour paisible et ressourçant.
"""
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2307
"adult_amount" => 2000
"children_amount" => 0
"basis_amount" => 2000
"mandatoryExtraId" => null
"default_extra_label" => "DEMI PENSION"
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 500
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 500
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 500
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 500
"kids_price" => 0
]
]
]
]
]
]
1 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
"Update Stay Rooms results"
2 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
array:6 [
0 => App\DTO\RoomStayDTO {#8630
-marginRate: 20
-id: 28
-name: "Beachfront Luxury Suite Pool Villa"
-slug: "beachfront-luxury-suite-pool-villa"
-picture: "/uploads/rooms/28/666bd1f381d01384759923.jpeg"
-description: """
Avec une vue dégagée sur l’océan scintillant à la couleur bleu turquoise et un accès direct à la plage, ces villas de 163 m² \r\n
sont des refuges idylliques pour vos escapades romantiques. \r\n
Chacune dispose d’une piscine chauffée de 15 m² et d’une terrasse extérieure pour vos repas en plein air. \r\n
L’harmonie règne entre sentiment d’intimité, espace et connexion avec la nature de l’île offrant ainsi un pur moment de tranquillité.
"""
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: "DEMI PENSION"
-mandatoryExtraId: null
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1885
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1885
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1885
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1885
"kids_price" => 0
]
]
"amount" => 7540
]
]
-totalRoomAmount: 7540.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:1 [
0 => App\DTO\ExtraStayDTO {#9205
-marginRate: 20
+extraId: 198
+name: "Dinner Supplement"
+description: null
+stayTotalNights: 4
+dailyAdults: 300
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1200
+kidsExtrasAmount: 0
+stayExtrasAmount: 1200
+stayRoomAmount: 7540.0
+totalStayAmountWoDiscount: 8740.0
+totalStayAmount: 8740.0
+finalAmountWoDiscount: 10488.0
+finalAmount: 10488.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
1 => App\DTO\RoomStayDTO {#9160
-marginRate: 20
-id: 30
-name: "Exclusive Suite Pool Villa"
-slug: "exclusive-suite-pool-villa"
-picture: "/uploads/rooms/30/666bd21696018184581499.jpeg"
-description: """
Ces villas de 220 m² sont de spacieux refuges exclusifs, où règnent élégance et espace. \r\n
La beauté du jardin privatif et les vues imprenables sur l’océan Indien en font un lieu privilégié pour une véritable immersion dans la nature – une escapade tropicale. \r\n
À l’intérieur, une chambre luxueuse et une salle de bains attenante sont associées à de vastes espaces de vie. En extérieur, vous trouverez une terrasse, lieu idéal pour manger en plein air, se prélasser et nager dans la piscine à débordement privée et chauffée de 25 m².
"""
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: "DEMI PENSION"
-mandatoryExtraId: null
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 3200
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 3200
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 3200
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 3200
"kids_price" => 0
]
]
"amount" => 12800
]
]
-totalRoomAmount: 12800.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:1 [
0 => App\DTO\ExtraStayDTO {#9208
-marginRate: 20
+extraId: 198
+name: "Dinner Supplement"
+description: null
+stayTotalNights: 4
+dailyAdults: 300
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1200
+kidsExtrasAmount: 0
+stayExtrasAmount: 1200
+stayRoomAmount: 12800.0
+totalStayAmountWoDiscount: 14000.0
+totalStayAmount: 14000.0
+finalAmountWoDiscount: 16800.0
+finalAmount: 16800.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
2 => App\DTO\RoomStayDTO {#9181
-marginRate: 20
-id: 31
-name: "Presidential Suite Pool Villa"
-slug: "presidential-suite-pool-villa"
-picture: "/uploads/rooms/31/67189c4e119f0304396048.jpg"
-description: """
Découvrez la quintessence du luxe et de l’espace dans nos deux plus grandes villas offrant ainsi une expérience inégalée sur cette île captivante. \r\n
D’une superficie de 345 m² avec une piscine privée et chauffée de 56 m², ces spacieuses villas sont un havre de paix avec accès direct sur la plage. Alors qu’une magnifique villa bénéficie d’une exclusivité totale, l’autre offre la splendeur des panoramas océaniques, et pourtant toutes deux sont gracieusement installées sur les rivages sablonneux. \r\n
Les villas disposent de deux chambres avec salles de bains attenantes, d’un vaste espace de vie équipé d’un home cinéma, d’une kitchenette privée et d’un service de majordome dédié 24h/24.
"""
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: "DEMI PENSION"
-mandatoryExtraId: null
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 6800
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 6800
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 6800
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 6800
"kids_price" => 0
]
]
"amount" => 27200
]
]
-totalRoomAmount: 27200.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:1 [
0 => App\DTO\ExtraStayDTO {#9174
-marginRate: 20
+extraId: 198
+name: "Dinner Supplement"
+description: null
+stayTotalNights: 4
+dailyAdults: 300
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1200
+kidsExtrasAmount: 0
+stayExtrasAmount: 1200
+stayRoomAmount: 27200.0
+totalStayAmountWoDiscount: 28400.0
+totalStayAmount: 28400.0
+finalAmountWoDiscount: 34080.0
+finalAmount: 34080.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
3 => App\DTO\RoomStayDTO {#9180
-marginRate: 20
-id: 228
-name: "Family Luxury Suite Pool Villa"
-slug: "family-luxury-suite-pool-villa"
-picture: "/uploads/rooms/228/673362dd96efe221040397.jpg"
-description: "Dotées de deux chambres pour accueillir les familles, ces villas de 163 m2 avec vue sur un jardin luxuriant et une piscine chauffée de 15 m2 sont de délicieux sanctuaires privés où il fait bon vivre ensemble."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: "DEMI PENSION"
-mandatoryExtraId: null
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 2700
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 2700
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 2700
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 2700
"kids_price" => 0
]
]
"amount" => 10800
]
]
-totalRoomAmount: 10800.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:1 [
0 => App\DTO\ExtraStayDTO {#9209
-marginRate: 20
+extraId: 198
+name: "Dinner Supplement"
+description: null
+stayTotalNights: 4
+dailyAdults: 300
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1200
+kidsExtrasAmount: 0
+stayExtrasAmount: 1200
+stayRoomAmount: 10800.0
+totalStayAmountWoDiscount: 12000.0
+totalStayAmount: 12000.0
+finalAmountWoDiscount: 14400.0
+finalAmount: 14400.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
4 => App\DTO\RoomStayDTO {#9158
-marginRate: 20
-id: 229
-name: "Beachfront Family Suite Pool Villa"
-slug: "beachfront-family-suite-pool-villa"
-picture: "/uploads/rooms/229/673362b6c357e769644110.jpeg"
-description: "Avec la deuxième chambre à l'intérieur et la piscine chauffée de 15 m2 à l'extérieur, vous disposez de tout l'espace et de l'intimité dont vous avez besoin pour vous épanouir ensemble."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: "DEMI PENSION"
-mandatoryExtraId: null
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 2900
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 2900
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 2900
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 2900
"kids_price" => 0
]
]
"amount" => 11600
]
]
-totalRoomAmount: 11600.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:1 [
0 => App\DTO\ExtraStayDTO {#9210
-marginRate: 20
+extraId: 198
+name: "Dinner Supplement"
+description: null
+stayTotalNights: 4
+dailyAdults: 300
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1200
+kidsExtrasAmount: 0
+stayExtrasAmount: 1200
+stayRoomAmount: 11600.0
+totalStayAmountWoDiscount: 12800.0
+totalStayAmount: 12800.0
+finalAmountWoDiscount: 15360.0
+finalAmount: 15360.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
5 => App\DTO\RoomStayDTO {#9199
-marginRate: 20
-id: 26
-name: "Luxury Suite Pool Villa"
-slug: "luxury-suite-pool-villa"
-picture: "/uploads/rooms/26/666bd173a341b028051667.jpeg"
-description: """
Mélangeant esthétisme traditionnel et contemporain, ces élégantes villas de 163 m² disposent d’une piscine chauffée de 15 m² et donnent sur nos jardins luxuriants. \r\n
Conçues pour la vie intérieure comme en extérieure, elles sont spacieuses, aérées et raffinées mais non ostentatoires. Il s’en dégage une aura authentique qui présage un séjour paisible et ressourçant.
"""
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: "DEMI PENSION"
-mandatoryExtraId: null
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 500
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 500
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 500
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 500
"kids_price" => 0
]
]
"amount" => 2000
]
]
-totalRoomAmount: 2000.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:1 [
0 => App\DTO\ExtraStayDTO {#9211
-marginRate: 20
+extraId: 198
+name: "Dinner Supplement"
+description: null
+stayTotalNights: 4
+dailyAdults: 300
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1200
+kidsExtrasAmount: 0
+stayExtrasAmount: 1200
+stayRoomAmount: 2000.0
+totalStayAmountWoDiscount: 3200.0
+totalStayAmount: 3200.0
+finalAmountWoDiscount: 3840.0
+finalAmount: 3840.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
]
1 in
RoomStayCalculation.php
line 274:
{
$offers_eligibled = [];
if ($this->debug) {
dump('All available offers of the hotel', $offers);
}
foreach ($offers as $key => $offer) {
"All available offers of the hotel"
2 in
RoomStayCalculation.php
line 274:
{
$offers_eligibled = [];
if ($this->debug) {
dump('All available offers of the hotel', $offers);
}
foreach ($offers as $key => $offer) {
Doctrine\Common\Collections\ArrayCollection {#9335
-elements: array:2 [
0 => App\Entity\Offers {#9254
-id: 52
-title: "MARADIVA STAY OFFER"
-type: "Special"
-hotel: App\Entity\Hotels {#1140
-id: 5
-name: "Maradiva Villas Resort & Spa"
-description: """
UN RESORT VRAIMENT EXCLUSIF TOUT-VILLA NICHÉ DANS LA NATURE SEREINE DE LA CÔTE OUEST DE MAURICE.\r\n
Maradiva Villas Resort & Spa est né de l’île et ne fait qu’un avec sa nature.\r\n
\r\n
Le nôtre est un monde divin et isolé de jardins luxuriants, d’intimité cocooning, d’artisanat culinaire exceptionnel, d’expériences enrichissantes et de soins sincères et personnalisés. \r\n
\r\n
Réparti sur 24 acres de plantations indigènes avec 750 m de plage immaculée, ce refuge intime fraîchement rénové promet un espace somptueux, une intimité la plus profonde et un bien-être merveilleux.
"""
-website: "https://www.maradiva.com/"
-stars: 5
-youtubeVideoId: "P7xdPD8uwh8"
-phone: "+230 403 1500"
-email: "info@maradiva.com"
-active: true
-gmapUrl: "<iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3741.6634116787327!2d57.36762121217651!3d-20.314194581083793!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x217c41861654b937%3A0x3dd94b7c3ee0002f!2sMaradiva%20Villas%20Resort%20%26%20Spa!5e0!3m2!1sfr!2sfr!4v1718968760100!5m2!1sfr!2sfr" width="100%" height="600" style="border:0;" allowfullscreen="" loading="lazy" referrerpolicy="no-referrer-when-downgrade"></iframe>"
-zone: "Ouest"
-createdAt: DateTimeImmutable @1714145854 {#1138
date: 2024-04-26 15:37:34.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1733397134 {#1139
date: 2024-12-05 11:12:14.0 UTC (+00:00)
}
-rooms: Doctrine\ORM\PersistentCollection {#1141
#collection: Doctrine\Common\Collections\ArrayCollection {#1142
-elements: array:6 [
0 => App\Entity\Rooms {#2361
-id: 28
-name: "Beachfront Luxury Suite Pool Villa"
-description: """
Avec une vue dégagée sur l’océan scintillant à la couleur bleu turquoise et un accès direct à la plage, ces villas de 163 m² \r\n
sont des refuges idylliques pour vos escapades romantiques. \r\n
Chacune dispose d’une piscine chauffée de 15 m² et d’une terrasse extérieure pour vos repas en plein air. \r\n
L’harmonie règne entre sentiment d’intimité, espace et connexion avec la nature de l’île offrant ainsi un pur moment de tranquillité.
"""
-active: true
-hotel: App\Entity\Hotels {#1140}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#9072
-elements: array:1 [
0 => App\Entity\RoomPrices {#2354
-id: 2314
-title: "Beachfront Luxury Suite Pool Villa"
-room: App\Entity\Rooms {#2361}
-quantity: 1
-stayStartedAt: DateTimeImmutable @1735862400 {#2286
date: 2025-01-03 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1745971200 {#2277
date: 2025-04-30 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2363
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2362
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "1885.00"
-singleOccupancy: "1885.00"
-tripleOccupancy: "200.00"
-active: true
-extraBaby: null
-extraChild: 0.0
-extraTeen: null
-defaultExtraLabel: "DEMI PENSION"
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2360
#collection: Doctrine\Common\Collections\ArrayCollection {#2359
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2361}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2358
#collection: Doctrine\Common\Collections\ArrayCollection {#2357
-elements: array:13 [
0 => App\Entity\RoomCapacities {#3637
-id: 1907
-room: App\Entity\Rooms {#2361}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3636
-id: 1908
-room: App\Entity\Rooms {#2361}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3635
-id: 1909
-room: App\Entity\Rooms {#2361}
-adults: 3
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3633
-id: 1910
-room: App\Entity\Rooms {#2361}
-adults: 3
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3618
-id: 1911
-room: App\Entity\Rooms {#2361}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3621
-id: 1912
-room: App\Entity\Rooms {#2361}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3620
-id: 1913
-room: App\Entity\Rooms {#2361}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3623
-id: 1914
-room: App\Entity\Rooms {#2361}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#3622
-id: 1915
-room: App\Entity\Rooms {#2361}
-adults: 3
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#3624
-id: 1916
-room: App\Entity\Rooms {#2361}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#3593
-id: 1917
-room: App\Entity\Rooms {#2361}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#3592
-id: 1918
-room: App\Entity\Rooms {#2361}
-adults: 3
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#3579
-id: 1919
-room: App\Entity\Rooms {#2361}
-adults: 4
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:13 [ …13]
-owner: App\Entity\Rooms {#2361}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2368
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672837 {#2299
date: 2024-10-23 08:40:37.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666bd1f381d01384759923.jpeg"
-gallery: App\Entity\Galleries {#2353
-id: 163
-hotel: null
-room: App\Entity\Rooms {#2361}
-images: Doctrine\ORM\PersistentCollection {#2352
#collection: Doctrine\Common\Collections\ArrayCollection {#2351
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2353}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "maradiva villa suite front de mer piscine"
}
-mediaDirSlug: "28"
-lowerRoomPrice: null
-services: null
-slug: "beachfront-luxury-suite-pool-villa"
}
1 => App\Entity\Rooms {#2344
-id: 30
-name: "Exclusive Suite Pool Villa"
-description: """
Ces villas de 220 m² sont de spacieux refuges exclusifs, où règnent élégance et espace. \r\n
La beauté du jardin privatif et les vues imprenables sur l’océan Indien en font un lieu privilégié pour une véritable immersion dans la nature – une escapade tropicale. \r\n
À l’intérieur, une chambre luxueuse et une salle de bains attenante sont associées à de vastes espaces de vie. En extérieur, vous trouverez une terrasse, lieu idéal pour manger en plein air, se prélasser et nager dans la piscine à débordement privée et chauffée de 25 m².
"""
-active: true
-hotel: App\Entity\Hotels {#1140}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#8906
-elements: array:1 [
0 => App\Entity\RoomPrices {#2337
-id: 2335
-title: "Exclusive Suite Pool Villa"
-room: App\Entity\Rooms {#2344}
-quantity: 6
-stayStartedAt: DateTimeImmutable @1735862400 {#2348
date: 2025-01-03 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1745971200 {#2347
date: 2025-04-30 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2346
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2345
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "3200.00"
-singleOccupancy: "3200.00"
-tripleOccupancy: "200.00"
-active: true
-extraBaby: null
-extraChild: 0.0
-extraTeen: null
-defaultExtraLabel: "DEMI PENSION"
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2343
#collection: Doctrine\Common\Collections\ArrayCollection {#2342
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2344}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2341
#collection: Doctrine\Common\Collections\ArrayCollection {#2340
-elements: array:17 [
0 => App\Entity\RoomCapacities {#3577
-id: 1941
-room: App\Entity\Rooms {#2344}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3608
-id: 1942
-room: App\Entity\Rooms {#2344}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3667
-id: 1943
-room: App\Entity\Rooms {#2344}
-adults: 3
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3654
-id: 1944
-room: App\Entity\Rooms {#2344}
-adults: 3
-teens: null
-children: 2
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3663
-id: 1945
-room: App\Entity\Rooms {#2344}
-adults: 2
-teens: null
-children: 2
-babies: 1
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3662
-id: 1946
-room: App\Entity\Rooms {#2344}
-adults: 1
-teens: null
-children: 2
-babies: 1
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3661
-id: 1947
-room: App\Entity\Rooms {#2344}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3660
-id: 1948
-room: App\Entity\Rooms {#2344}
-adults: 3
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#3659
-id: 1949
-room: App\Entity\Rooms {#2344}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#3658
-id: 1950
-room: App\Entity\Rooms {#2344}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#3657
-id: 1951
-room: App\Entity\Rooms {#2344}
-adults: 3
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#3664
-id: 1952
-room: App\Entity\Rooms {#2344}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#3665
-id: 1953
-room: App\Entity\Rooms {#2344}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#3680
-id: 1954
-room: App\Entity\Rooms {#2344}
-adults: 3
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
14 => App\Entity\RoomCapacities {#3678
-id: 1955
-room: App\Entity\Rooms {#2344}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
15 => App\Entity\RoomCapacities {#3679
-id: 1956
-room: App\Entity\Rooms {#2344}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
16 => App\Entity\RoomCapacities {#3676
-id: 1957
-room: App\Entity\Rooms {#2344}
-adults: 3
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:17 [ …17]
-owner: App\Entity\Rooms {#2344}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2350
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672837 {#2349
date: 2024-10-23 08:40:37.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666bd21696018184581499.jpeg"
-gallery: App\Entity\Galleries {#2336
-id: 164
-hotel: null
-room: App\Entity\Rooms {#2344}
-images: Doctrine\ORM\PersistentCollection {#2335
#collection: Doctrine\Common\Collections\ArrayCollection {#2334
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2336}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Maradiva Exclusive suite pool villa"
}
-mediaDirSlug: "30"
-lowerRoomPrice: null
-services: null
-slug: "exclusive-suite-pool-villa"
}
2 => App\Entity\Rooms {#2327
-id: 31
-name: "Presidential Suite Pool Villa"
-description: """
Découvrez la quintessence du luxe et de l’espace dans nos deux plus grandes villas offrant ainsi une expérience inégalée sur cette île captivante. \r\n
D’une superficie de 345 m² avec une piscine privée et chauffée de 56 m², ces spacieuses villas sont un havre de paix avec accès direct sur la plage. Alors qu’une magnifique villa bénéficie d’une exclusivité totale, l’autre offre la splendeur des panoramas océaniques, et pourtant toutes deux sont gracieusement installées sur les rivages sablonneux. \r\n
Les villas disposent de deux chambres avec salles de bains attenantes, d’un vaste espace de vie équipé d’un home cinéma, d’une kitchenette privée et d’un service de majordome dédié 24h/24.
"""
-active: true
-hotel: App\Entity\Hotels {#1140}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#9090
-elements: array:1 [
0 => App\Entity\RoomPrices {#2320
-id: 2342
-title: "Presidential Suite Pool Villa"
-room: App\Entity\Rooms {#2327}
-quantity: 2
-stayStartedAt: DateTimeImmutable @1735862400 {#2331
date: 2025-01-03 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1745971200 {#2330
date: 2025-04-30 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2329
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2328
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "6800.00"
-singleOccupancy: "6800.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: 0.0
-extraTeen: null
-defaultExtraLabel: "DEMI PENSION"
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2326
#collection: Doctrine\Common\Collections\ArrayCollection {#2325
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2327}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2324
#collection: Doctrine\Common\Collections\ArrayCollection {#2323
-elements: array:27 [
0 => App\Entity\RoomCapacities {#3677
-id: 1958
-room: App\Entity\Rooms {#2327}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3674
-id: 1959
-room: App\Entity\Rooms {#2327}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3675
-id: 1960
-room: App\Entity\Rooms {#2327}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3672
-id: 1961
-room: App\Entity\Rooms {#2327}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3673
-id: 1962
-room: App\Entity\Rooms {#2327}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3670
-id: 1963
-room: App\Entity\Rooms {#2327}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3671
-id: 1964
-room: App\Entity\Rooms {#2327}
-adults: 1
-teens: 1
-children: 1
-babies: 1
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3668
-id: 1965
-room: App\Entity\Rooms {#2327}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#3669
-id: 1966
-room: App\Entity\Rooms {#2327}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#3666
-id: 1967
-room: App\Entity\Rooms {#2327}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#3683
-id: 1968
-room: App\Entity\Rooms {#2327}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#3684
-id: 1969
-room: App\Entity\Rooms {#2327}
-adults: 2
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#3685
-id: 1970
-room: App\Entity\Rooms {#2327}
-adults: 2
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#3686
-id: 1971
-room: App\Entity\Rooms {#2327}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
14 => App\Entity\RoomCapacities {#3687
-id: 1972
-room: App\Entity\Rooms {#2327}
-adults: 3
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
15 => App\Entity\RoomCapacities {#3688
-id: 1973
-room: App\Entity\Rooms {#2327}
-adults: 3
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
16 => App\Entity\RoomCapacities {#3689
-id: 1974
-room: App\Entity\Rooms {#2327}
-adults: 3
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
17 => App\Entity\RoomCapacities {#3690
-id: 1975
-room: App\Entity\Rooms {#2327}
-adults: 3
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
18 => App\Entity\RoomCapacities {#3691
-id: 1976
-room: App\Entity\Rooms {#2327}
-adults: 3
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
19 => App\Entity\RoomCapacities {#3692
-id: 1977
-room: App\Entity\Rooms {#2327}
-adults: 3
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
20 => App\Entity\RoomCapacities {#3693
-id: 1978
-room: App\Entity\Rooms {#2327}
-adults: 3
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
21 => App\Entity\RoomCapacities {#3694
-id: 1979
-room: App\Entity\Rooms {#2327}
-adults: 4
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
22 => App\Entity\RoomCapacities {#3695
-id: 1980
-room: App\Entity\Rooms {#2327}
-adults: 4
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
23 => App\Entity\RoomCapacities {#3696
-id: 1981
-room: App\Entity\Rooms {#2327}
-adults: 4
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
24 => App\Entity\RoomCapacities {#3697
-id: 1982
-room: App\Entity\Rooms {#2327}
-adults: 4
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
25 => App\Entity\RoomCapacities {#3698
-id: 1983
-room: App\Entity\Rooms {#2327}
-adults: 4
-teens: null
-children: 2
-babies: 1
-isDefaultConfig: false
}
26 => App\Entity\RoomCapacities {#3699
-id: 1984
-room: App\Entity\Rooms {#2327}
-adults: 5
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:27 [ …27]
-owner: App\Entity\Rooms {#2327}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2333
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729680526 {#2332
date: 2024-10-23 10:48:46.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "67189c4e119f0304396048.jpg"
-gallery: App\Entity\Galleries {#2319
-id: 205
-hotel: null
-room: App\Entity\Rooms {#2327}
-images: Doctrine\ORM\PersistentCollection {#2318
#collection: Doctrine\Common\Collections\ArrayCollection {#2317
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2319}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "maradiva presidential"
}
-mediaDirSlug: "31"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "presidential-suite-pool-villa"
}
3 => App\Entity\Rooms {#2309
-id: 228
-name: "Family Luxury Suite Pool Villa"
-description: "Dotées de deux chambres pour accueillir les familles, ces villas de 163 m2 avec vue sur un jardin luxuriant et une piscine chauffée de 15 m2 sont de délicieux sanctuaires privés où il fait bon vivre ensemble."
-active: true
-hotel: App\Entity\Hotels {#1140}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#9111
-elements: array:1 [
0 => App\Entity\RoomPrices {#2301
-id: 2321
-title: "Family Luxury Suite Pool Villa"
-room: App\Entity\Rooms {#2309}
-quantity: 1
-stayStartedAt: DateTimeImmutable @1735862400 {#2314
date: 2025-01-03 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1745971200 {#2313
date: 2025-04-30 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2312
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2310
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "2700.00"
-singleOccupancy: "2700.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: 0.0
-extraTeen: null
-defaultExtraLabel: "DEMI PENSION"
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2308
#collection: Doctrine\Common\Collections\ArrayCollection {#2307
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2309}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2306
#collection: Doctrine\Common\Collections\ArrayCollection {#2304
-elements: array:4 [
0 => App\Entity\RoomCapacities {#3700
-id: 3493
-room: App\Entity\Rooms {#2309}
-adults: 1
-teens: 3
-children: 1
-babies: 1
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3701
-id: 3494
-room: App\Entity\Rooms {#2309}
-adults: 2
-teens: 2
-children: 1
-babies: 1
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3702
-id: 3495
-room: App\Entity\Rooms {#2309}
-adults: 3
-teens: 1
-children: 1
-babies: 1
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3703
-id: 3496
-room: App\Entity\Rooms {#2309}
-adults: 4
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:4 [ …4]
-owner: App\Entity\Rooms {#2309}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1725984879 {#2316
date: 2024-09-10 16:14:39.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1731435293 {#2315
date: 2024-11-12 18:14:53.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "673362dd96efe221040397.jpg"
-gallery: App\Entity\Galleries {#2300
-id: 206
-hotel: null
-room: App\Entity\Rooms {#2309}
-images: Doctrine\ORM\PersistentCollection {#2298
#collection: Doctrine\Common\Collections\ArrayCollection {#2297
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2300}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "maradiva luxury suite pool villa"
}
-mediaDirSlug: "228"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "family-luxury-suite-pool-villa"
}
4 => App\Entity\Rooms {#2289
-id: 229
-name: "Beachfront Family Suite Pool Villa"
-description: "Avec la deuxième chambre à l'intérieur et la piscine chauffée de 15 m2 à l'extérieur, vous disposez de tout l'espace et de l'intimité dont vous avez besoin pour vous épanouir ensemble."
-active: true
-hotel: App\Entity\Hotels {#1140}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#9132
-elements: array:1 [
0 => App\Entity\RoomPrices {#2281
-id: 2328
-title: "Beachfront Family Suite Pool Villa"
-room: App\Entity\Rooms {#2289}
-quantity: 1
-stayStartedAt: DateTimeImmutable @1735862400 {#2294
date: 2025-01-03 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1745971200 {#2292
date: 2025-04-30 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2291
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2290
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "2900.00"
-singleOccupancy: "2900.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: 0.0
-extraTeen: null
-defaultExtraLabel: "DEMI PENSION"
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2288
#collection: Doctrine\Common\Collections\ArrayCollection {#2287
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2289}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2285
#collection: Doctrine\Common\Collections\ArrayCollection {#2284
-elements: array:4 [
0 => App\Entity\RoomCapacities {#3704
-id: 3497
-room: App\Entity\Rooms {#2289}
-adults: 1
-teens: 3
-children: 1
-babies: 1
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3705
-id: 3498
-room: App\Entity\Rooms {#2289}
-adults: 2
-teens: 2
-children: 1
-babies: 1
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3706
-id: 3499
-room: App\Entity\Rooms {#2289}
-adults: 3
-teens: 1
-children: 1
-babies: 1
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3707
-id: 3500
-room: App\Entity\Rooms {#2289}
-adults: 4
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:4 [ …4]
-owner: App\Entity\Rooms {#2289}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1725984892 {#2296
date: 2024-09-10 16:14:52.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1731435254 {#2295
date: 2024-11-12 18:14:14.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "673362b6c357e769644110.jpeg"
-gallery: App\Entity\Galleries {#2279
-id: 209
-hotel: null
-room: App\Entity\Rooms {#2289}
-images: Doctrine\ORM\PersistentCollection {#1962
#collection: Doctrine\Common\Collections\ArrayCollection {#1955
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2279}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "maradiva beachfront family suite pool villa"
}
-mediaDirSlug: "229"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "beachfront-family-suite-pool-villa"
}
5 => App\Entity\Rooms {#2422
-id: 26
-name: "Luxury Suite Pool Villa"
-description: """
Mélangeant esthétisme traditionnel et contemporain, ces élégantes villas de 163 m² disposent d’une piscine chauffée de 15 m² et donnent sur nos jardins luxuriants. \r\n
Conçues pour la vie intérieure comme en extérieure, elles sont spacieuses, aérées et raffinées mais non ostentatoires. Il s’en dégage une aura authentique qui présage un séjour paisible et ressourçant.
"""
-active: true
-hotel: App\Entity\Hotels {#1140}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#9153
-elements: array:1 [
0 => App\Entity\RoomPrices {#2387
-id: 2307
-title: "Luxury Suite Pool Villa"
-room: App\Entity\Rooms {#2422}
-quantity: 31
-stayStartedAt: DateTimeImmutable @1735905600 {#1310
date: 2025-01-03 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746014400 {#2190
date: 2025-04-30 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2430
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2428
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "500.00"
-singleOccupancy: "500.00"
-tripleOccupancy: "200.00"
-active: true
-extraBaby: null
-extraChild: 0.0
-extraTeen: null
-defaultExtraLabel: "DEMI PENSION"
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2416
#collection: Doctrine\Common\Collections\ArrayCollection {#2409
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2422}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2403
#collection: Doctrine\Common\Collections\ArrayCollection {#2397
-elements: array:12 [
0 => App\Entity\RoomCapacities {#3649
-id: 1870
-room: App\Entity\Rooms {#2422}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3648
-id: 1871
-room: App\Entity\Rooms {#2422}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3647
-id: 1872
-room: App\Entity\Rooms {#2422}
-adults: 3
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3646
-id: 1874
-room: App\Entity\Rooms {#2422}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3645
-id: 1875
-room: App\Entity\Rooms {#2422}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3644
-id: 1876
-room: App\Entity\Rooms {#2422}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3643
-id: 1877
-room: App\Entity\Rooms {#2422}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3642
-id: 1879
-room: App\Entity\Rooms {#2422}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#3641
-id: 1880
-room: App\Entity\Rooms {#2422}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#3640
-id: 3471
-room: App\Entity\Rooms {#2422}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#3639
-id: 3472
-room: App\Entity\Rooms {#2422}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#3638
-id: 3473
-room: App\Entity\Rooms {#2422}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:12 [ …12]
-owner: App\Entity\Rooms {#2422}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1863
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1733397361 {#1956
date: 2024-12-05 11:16:01.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666bd173a341b028051667.jpeg"
-gallery: App\Entity\Galleries {#2386
-id: 161
-hotel: null
-room: App\Entity\Rooms {#2422}
-images: Doctrine\ORM\PersistentCollection {#2385
#collection: Doctrine\Common\Collections\ArrayCollection {#2384
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2386}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Maradiva luxury suite pool villa"
}
-mediaDirSlug: "26"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "luxury-suite-pool-villa"
}
]
}
#initialized: true
-snapshot: array:6 [ …6]
-owner: App\Entity\Hotels {#1140}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#880 …}
-backRefFieldName: "hotel"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-address: "Route Côtiere Wolmar, Flic En Flac, Île Maurice"
-checkInTime: "14H00"
-checkOutTime: "12H00 à 18H00"
-babyAgeMax: "6"
-childAgeMax: "12"
-teenAgeMax: "17"
-extraCharges: Doctrine\ORM\PersistentCollection {#1143
#collection: Doctrine\Common\Collections\ArrayCollection {#1144
-elements: array:2 [
0 => App\Entity\ExtraCharges {#9201
-id: 14
-title: "Supplément diner du nouvel an"
-description: null
-adultExtra: 450.0
-babyExtra: null
-childExtra: 225.0
-teenExtra: 450.0
-stayStartedAt: DateTimeImmutable @1735603200 {#9202
date: 2024-12-31 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1735689600 {#9197
date: 2025-01-01 00:00:00.0 UTC (+00:00)
}
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1140}
}
1 => App\Entity\ExtraCharges {#9207
-id: 198
-title: "Dinner Supplement"
-description: null
-adultExtra: 150.0
-babyExtra: null
-childExtra: 50.0
-teenExtra: 150.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1140}
}
]
}
#initialized: true
-snapshot: array:2 [ …2]
-owner: App\Entity\Hotels {#1140}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#876 …}
-backRefFieldName: "hotel"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-imageFile: null
-featuredImage: "66965cafd5b75799223960.jpg"
-gallery: App\Entity\Galleries {#1147
-id: 162
-hotel: App\Entity\Hotels {#1140}
-room: null
-images: Doctrine\ORM\PersistentCollection {#1148
#collection: Doctrine\Common\Collections\ArrayCollection {#1149
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1147}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Hotel Maradiva"
}
-mediaDirSlug: null
-offers: Doctrine\Common\Collections\ArrayCollection {#9335}
-highlighted: false
-services: array:1 [
0 => ""
]
-hlStartAt: null
-hlEndAt: null
-slug: "maradiva-villas-resort-spa"
}
-description: null
-stayStartAt: DateTimeImmutable @1704067200 {#9250
date: 2024-01-01 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1761868800 {#9251
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1704067200 {#9252
date: 2024-01-01 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1761868800 {#9253
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-reference: "40% contrat"
-minNights: null
-maxNights: null
-earlyBookingDays: null
-applyToAllRooms: false
-selectedRooms: Doctrine\ORM\PersistentCollection {#9255
#collection: Doctrine\Common\Collections\ArrayCollection {#9256
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#9254}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1075 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 40
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#9257
#collection: Doctrine\Common\Collections\ArrayCollection {#9258
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#9254}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1081 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-offers: Doctrine\ORM\PersistentCollection {#9259
#collection: Doctrine\Common\Collections\ArrayCollection {#9260
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#9254}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1085 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#9261
#collection: Doctrine\Common\Collections\ArrayCollection {#9262
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#9254}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1087 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#9263
#collection: Doctrine\Common\Collections\ArrayCollection {#9264
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#9254}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1093 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-extrasDiscount: null
-priority: 1
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
1 => App\Entity\Offers {#9284
-id: 199
-title: "LONG STAY OFFER"
-type: "Special"
-hotel: App\Entity\Hotels {#1140}
-description: null
-stayStartAt: DateTimeImmutable @1735776000 {#9280
date: 2025-01-02 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1761868800 {#9281
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1730419200 {#9282
date: 2024-11-01 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1761868800 {#9283
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-reference: "LONG STAY OFFER"
-minNights: 5
-maxNights: null
-earlyBookingDays: null
-applyToAllRooms: false
-selectedRooms: Doctrine\ORM\PersistentCollection {#9285
#collection: Doctrine\Common\Collections\ArrayCollection {#9286
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#9284}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1075 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 50
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#9287
#collection: Doctrine\Common\Collections\ArrayCollection {#9288
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#9284}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1081 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-offers: Doctrine\ORM\PersistentCollection {#9289
#collection: Doctrine\Common\Collections\ArrayCollection {#9290
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#9284}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1085 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#9291
#collection: Doctrine\Common\Collections\ArrayCollection {#9292
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#9284}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1087 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#9293
#collection: Doctrine\Common\Collections\ArrayCollection {#9294
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#9284}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1093 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-extrasDiscount: null
-priority: 1
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
]
}
1 in
PromotionDTO.php
line 556:
if ($offer_min_nights) {
if($stay_nights < $offer_min_nights){
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle(), 'Min nights failure.');
}
return $this;
}
"199 - LONG STAY OFFER"
2 in
PromotionDTO.php
line 556:
if ($offer_min_nights) {
if($stay_nights < $offer_min_nights){
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle(), 'Min nights failure.');
}
return $this;
}
"Min nights failure."
1 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
"Step 1. Offres valides : "
2 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
array:1 [
0 => App\DTO\PromotionDTO {#9433
-debug: true
+id: 52
+title: "MARADIVA STAY OFFER"
+description: null
+type: "Special"
+reference: "40% contrat"
+from: DateTimeImmutable @1704067200 {#9250
date: 2024-01-01 00:00:00.0 UTC (+00:00)
}
+to: DateTimeImmutable @1761868800 {#9251
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
+earlyBookingDays: null
+minNights: null
+maxNights: null
+discountRate: 40
+discountFamilyRates: []
+combinableRate: null
+priority: 1
+extrasDiscountRate: null
+isAllRooms: false
+isCombinable: false
+selectedRoomsIDs: array:5 [
0 => 28
1 => 30
2 => 31
3 => 228
4 => 229
]
+selectedExtrasIDs: []
+selectedOffersIDs: []
+selectedExtrasDiscountIDs: []
}
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Le Cardinal Resort - Chambre : #56 - Junior Suite has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#9681
+rpId: 1404
+adultsPrice: 430
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 430
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 430
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 430
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 430
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Le Cardinal Resort - Chambre : #57 - Duplex Suite has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#9702
+rpId: 1409
+adultsPrice: 555
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 555
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 555
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 555
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 555
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Le Cardinal Resort - Chambre : #58 - Penthouse Jacuzzi has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#9723
+rpId: 1414
+adultsPrice: 555
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 555
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 555
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 555
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 555
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Le Cardinal Resort - Chambre : #59 - Deluxe Penthouse has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#9744
+rpId: 1419
+adultsPrice: 655
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 655
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 655
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 655
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 655
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
"Update Stay Rooms - Chambers Prices"
2 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
array:1 [
0 => array:4 [
0 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
"room_id" => 56
"room_picture" => "/uploads/rooms/56/6718999b6bf90808734269.jpg"
"room_name" => "Junior Suite"
"room_slug" => "junior-suite-2"
"room_description" => """
Conçue dans un style contemporain, la suite junior est aménagée avec des meubles, du parquet et une porte en bois. Le lit king size est doté de gros oreillers et de draps blancs, rehaussés de peintures d'art, de murs blancs, de fenêtres et de portes drapées de lourds rideaux beiges pour créer une atmosphère à la fois majestueuse et chaleureuse.\r\n
\r\n
La porte coulissante s'ouvre sur un balcon au mobilier meublé pour offrir à nos hôtes une vue imprenable sur le lagon.\r\n
\r\n
Nos clients peuvent également profiter d'autres équipements dans les chambres, notamment un fauteuil confortable, un accès Internet sans fil gratuit, un mini-bar et un bureau pouvant être transformé en coiffeuse.\r\n
\r\n
La suite offre également une élégante salle de bain avec double vasque, douche, toilettes, produits de beauté et dressing. Enfilez vos pantoufles et enfilez votre peignoir pour profiter d'une vue spectaculaire depuis votre baignoire avec vos proches.
"""
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1404
"adult_amount" => 1720
"children_amount" => 0
"basis_amount" => 1720
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 430
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 430
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 430
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 430
"kids_price" => 0
]
]
]
]
1 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 57
"room_picture" => "/uploads/rooms/57/67189a2ef1be0703768426.jpg"
"room_name" => "Duplex Suite"
"room_slug" => "duplex-suite"
"room_description" => """
Le duplex s'ouvre sur un grand séjour avec mini bar, télévision et lecteur DVD, ainsi que des sanitaires.\r\n
\r\n
Le premier étage offre une chambre principale dotée d'un lit king size ainsi que d'une salle de bain et d'une terrasse attenantes.
"""
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1409
"adult_amount" => 2220
"children_amount" => 0
"basis_amount" => 2220
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 555
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 555
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 555
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 555
"kids_price" => 0
]
]
]
]
2 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 58
"room_picture" => "/uploads/rooms/58/67189ab39b871297065203.jpg"
"room_name" => "Penthouse Jacuzzi"
"room_slug" => "penthouse-jacuzzi"
"room_description" => """
La suite comprend une chambre principale king size, un coin salon, une élégante salle de bain avec baignoire jacuzzi et douche séparée, des toilettes et un dressing.\r\n
\r\n
Détendez-vous sur la terrasse joliment meublée au dernier étage avec une vue imprenable sur la plage épique de Trou aux Biches.
"""
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1414
"adult_amount" => 2220
"children_amount" => 0
"basis_amount" => 2220
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 555
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 555
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 555
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 555
"kids_price" => 0
]
]
]
]
3 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 59
"room_picture" => "/uploads/rooms/59/6718e3f8aded0024241338.jpg"
"room_name" => "Deluxe Penthouse"
"room_slug" => "deluxe-penthouse"
"room_description" => """
Enveloppés d'un délicat tissu blanc, le lit king size à baldaquin, la lampe suspendue au plafond voûté en bois, le mobilier sur mesure, les larges fenêtres et portes terrasses, créent une atmosphère très chic et intimiste.\r\n
\r\n
La suite spacieuse de 87 m² dispose également d'un espace salon avec un canapé confortable de couleur beige, habillé de coussins blancs et verts pour se reposer ou s'adonner à la vue fondante du lagon bleu turquoise.\r\n
\r\n
Pour profiter de ces moments de tendresse, on peut se détendre sur les transats de la terrasse de 48 m², main dans la main et en sirotant une coupe de champagne bien frais, se détendre dans le bassin profond privé et, apprécier cet après-midi mémorable en contemplant l'océan bleu vers l'infini. …. une véritable expérience des sens……
"""
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1419
"adult_amount" => 2620
"children_amount" => 0
"basis_amount" => 2620
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 655
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 655
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 655
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 655
"kids_price" => 0
]
]
]
]
]
]
1 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
"Update Stay Rooms results"
2 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
array:4 [
0 => App\DTO\RoomStayDTO {#9662
-marginRate: 20
-id: 56
-name: "Junior Suite"
-slug: "junior-suite-2"
-picture: "/uploads/rooms/56/6718999b6bf90808734269.jpg"
-description: """
Conçue dans un style contemporain, la suite junior est aménagée avec des meubles, du parquet et une porte en bois. Le lit king size est doté de gros oreillers et de draps blancs, rehaussés de peintures d'art, de murs blancs, de fenêtres et de portes drapées de lourds rideaux beiges pour créer une atmosphère à la fois majestueuse et chaleureuse.\r\n
\r\n
La porte coulissante s'ouvre sur un balcon au mobilier meublé pour offrir à nos hôtes une vue imprenable sur le lagon.\r\n
\r\n
Nos clients peuvent également profiter d'autres équipements dans les chambres, notamment un fauteuil confortable, un accès Internet sans fil gratuit, un mini-bar et un bureau pouvant être transformé en coiffeuse.\r\n
\r\n
La suite offre également une élégante salle de bain avec double vasque, douche, toilettes, produits de beauté et dressing. Enfilez vos pantoufles et enfilez votre peignoir pour profiter d'une vue spectaculaire depuis votre baignoire avec vos proches.
"""
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 173
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 430
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 430
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 430
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 430
"kids_price" => 0
]
]
"amount" => 1720
]
]
-totalRoomAmount: 1720.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:1 [
0 => App\DTO\ExtraStayDTO {#9762
-marginRate: 20
+extraId: 173
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1720.0
+totalStayAmountWoDiscount: 1720.0
+totalStayAmount: 1720.0
+finalAmountWoDiscount: 2064.0
+finalAmount: 2064.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
1 => App\DTO\RoomStayDTO {#9719
-marginRate: 20
-id: 57
-name: "Duplex Suite"
-slug: "duplex-suite"
-picture: "/uploads/rooms/57/67189a2ef1be0703768426.jpg"
-description: """
Le duplex s'ouvre sur un grand séjour avec mini bar, télévision et lecteur DVD, ainsi que des sanitaires.\r\n
\r\n
Le premier étage offre une chambre principale dotée d'un lit king size ainsi que d'une salle de bain et d'une terrasse attenantes.
"""
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 173
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 555
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 555
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 555
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 555
"kids_price" => 0
]
]
"amount" => 2220
]
]
-totalRoomAmount: 2220.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:1 [
0 => App\DTO\ExtraStayDTO {#9765
-marginRate: 20
+extraId: 173
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2220.0
+totalStayAmountWoDiscount: 2220.0
+totalStayAmount: 2220.0
+finalAmountWoDiscount: 2664.0
+finalAmount: 2664.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
2 => App\DTO\RoomStayDTO {#9740
-marginRate: 20
-id: 58
-name: "Penthouse Jacuzzi"
-slug: "penthouse-jacuzzi"
-picture: "/uploads/rooms/58/67189ab39b871297065203.jpg"
-description: """
La suite comprend une chambre principale king size, un coin salon, une élégante salle de bain avec baignoire jacuzzi et douche séparée, des toilettes et un dressing.\r\n
\r\n
Détendez-vous sur la terrasse joliment meublée au dernier étage avec une vue imprenable sur la plage épique de Trou aux Biches.
"""
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 173
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 555
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 555
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 555
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 555
"kids_price" => 0
]
]
"amount" => 2220
]
]
-totalRoomAmount: 2220.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:1 [
0 => App\DTO\ExtraStayDTO {#9717
-marginRate: 20
+extraId: 173
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2220.0
+totalStayAmountWoDiscount: 2220.0
+totalStayAmount: 2220.0
+finalAmountWoDiscount: 2664.0
+finalAmount: 2664.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
3 => App\DTO\RoomStayDTO {#9739
-marginRate: 20
-id: 59
-name: "Deluxe Penthouse"
-slug: "deluxe-penthouse"
-picture: "/uploads/rooms/59/6718e3f8aded0024241338.jpg"
-description: """
Enveloppés d'un délicat tissu blanc, le lit king size à baldaquin, la lampe suspendue au plafond voûté en bois, le mobilier sur mesure, les larges fenêtres et portes terrasses, créent une atmosphère très chic et intimiste.\r\n
\r\n
La suite spacieuse de 87 m² dispose également d'un espace salon avec un canapé confortable de couleur beige, habillé de coussins blancs et verts pour se reposer ou s'adonner à la vue fondante du lagon bleu turquoise.\r\n
\r\n
Pour profiter de ces moments de tendresse, on peut se détendre sur les transats de la terrasse de 48 m², main dans la main et en sirotant une coupe de champagne bien frais, se détendre dans le bassin profond privé et, apprécier cet après-midi mémorable en contemplant l'océan bleu vers l'infini. …. une véritable expérience des sens……
"""
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 173
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 655
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 655
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 655
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 655
"kids_price" => 0
]
]
"amount" => 2620
]
]
-totalRoomAmount: 2620.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:1 [
0 => App\DTO\ExtraStayDTO {#9769
-marginRate: 20
+extraId: 173
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2620.0
+totalStayAmountWoDiscount: 2620.0
+totalStayAmount: 2620.0
+finalAmountWoDiscount: 3144.0
+finalAmount: 3144.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
]
1 in
RoomStayCalculation.php
line 274:
{
$offers_eligibled = [];
if ($this->debug) {
dump('All available offers of the hotel', $offers);
}
foreach ($offers as $key => $offer) {
"All available offers of the hotel"
2 in
RoomStayCalculation.php
line 274:
{
$offers_eligibled = [];
if ($this->debug) {
dump('All available offers of the hotel', $offers);
}
foreach ($offers as $key => $offer) {
Doctrine\Common\Collections\ArrayCollection {#9859
-elements: array:1 [
0 => App\Entity\Offers {#9838
-id: 181
-title: "Contractuelle 10%"
-type: "Special"
-hotel: App\Entity\Hotels {#1152
-id: 10
-name: "Le Cardinal Resort"
-description: """
Idéalement situé au nord-ouest de l'île Maurice, Le Cardinal Exclusive Resort est une boutique hôtel qui offre une atmosphère exclusive, exotique et exaltante. Profitez d'un climat agréable tout au long de l'année et d'une grande variété d'attractions touristiques à découvrir dans les environs.\r\n
\r\n
Toutes nos suites offrent une vue imprenable sur notre plage privée et le lagon bleu turquoise de Trou aux Biches. Lors de votre séjour parmi nous, vous serez ravis de découvrir notre salle de soins avec vue sur le lagon, et de déguster les plats les plus raffinés dans notre restaurant gastronomique.
"""
-website: "https://lecardinalresort.com/"
-stars: 5
-youtubeVideoId: "n0jfhb598QM"
-phone: "+230 204 5200"
-email: "info@thecardinal.com"
-active: true
-gmapUrl: "<iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3748.5668782455905!2d57.54570681217133!3d-20.026684981305994!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x217daca5cb0c0fa5%3A0x5073758e9bdf4aa9!2sLe%20Cardinal%20Exclusive%20Resort!5e0!3m2!1sfr!2sfr!4v1718969049174!5m2!1sfr!2sfr" width="100%" height="600" style="border:0;" allowfullscreen="" loading="lazy" referrerpolicy="no-referrer-when-downgrade"></iframe>"
-zone: "Nord"
-createdAt: DateTimeImmutable @1714145854 {#1150
date: 2024-04-26 15:37:34.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1733326118 {#1151
date: 2024-12-04 15:28:38.0 UTC (+00:00)
}
-rooms: Doctrine\ORM\PersistentCollection {#1153
#collection: Doctrine\Common\Collections\ArrayCollection {#1154
-elements: array:4 [
0 => App\Entity\Rooms {#2472
-id: 56
-name: "Junior Suite"
-description: """
Conçue dans un style contemporain, la suite junior est aménagée avec des meubles, du parquet et une porte en bois. Le lit king size est doté de gros oreillers et de draps blancs, rehaussés de peintures d'art, de murs blancs, de fenêtres et de portes drapées de lourds rideaux beiges pour créer une atmosphère à la fois majestueuse et chaleureuse.\r\n
\r\n
La porte coulissante s'ouvre sur un balcon au mobilier meublé pour offrir à nos hôtes une vue imprenable sur le lagon.\r\n
\r\n
Nos clients peuvent également profiter d'autres équipements dans les chambres, notamment un fauteuil confortable, un accès Internet sans fil gratuit, un mini-bar et un bureau pouvant être transformé en coiffeuse.\r\n
\r\n
La suite offre également une élégante salle de bain avec double vasque, douche, toilettes, produits de beauté et dressing. Enfilez vos pantoufles et enfilez votre peignoir pour profiter d'une vue spectaculaire depuis votre baignoire avec vos proches.
"""
-active: true
-hotel: App\Entity\Hotels {#1152}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#9673
-elements: array:1 [
0 => App\Entity\RoomPrices {#2465
-id: 1404
-title: "Junior Suite - Haute"
-room: App\Entity\Rooms {#2472}
-quantity: 10
-stayStartedAt: DateTimeImmutable @1736164800 {#2372
date: 2025-01-06 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746014400 {#2381
date: 2025-04-30 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2474
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2473
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 3
-doubleOccupancy: "430.00"
-singleOccupancy: "430.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: 60.0
-extraTeen: null
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2471
#collection: Doctrine\Common\Collections\ArrayCollection {#2470
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2472}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2469
#collection: Doctrine\Common\Collections\ArrayCollection {#2468
-elements: array:12 [
0 => App\Entity\RoomCapacities {#3727
-id: 2385
-room: App\Entity\Rooms {#2472}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3726
-id: 2386
-room: App\Entity\Rooms {#2472}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3725
-id: 2387
-room: App\Entity\Rooms {#2472}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3724
-id: 2388
-room: App\Entity\Rooms {#2472}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3723
-id: 2389
-room: App\Entity\Rooms {#2472}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3722
-id: 2390
-room: App\Entity\Rooms {#2472}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3721
-id: 2391
-room: App\Entity\Rooms {#2472}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3720
-id: 2392
-room: App\Entity\Rooms {#2472}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#3719
-id: 2393
-room: App\Entity\Rooms {#2472}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#3718
-id: 3317
-room: App\Entity\Rooms {#2472}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#3717
-id: 3318
-room: App\Entity\Rooms {#2472}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#3715
-id: 3319
-room: App\Entity\Rooms {#2472}
-adults: 1
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:12 [ …12]
-owner: App\Entity\Rooms {#2472}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2479
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729679835 {#2414
date: 2024-10-23 10:37:15.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "6718999b6bf90808734269.jpg"
-gallery: App\Entity\Galleries {#2464
-id: 185
-hotel: null
-room: App\Entity\Rooms {#2472}
-images: Doctrine\ORM\PersistentCollection {#2463
#collection: Doctrine\Common\Collections\ArrayCollection {#2462
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2464}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Le Cardinal Resort - Junior Suite"
}
-mediaDirSlug: "56"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "junior-suite-2"
}
1 => App\Entity\Rooms {#2455
-id: 57
-name: "Duplex Suite"
-description: """
Le duplex s'ouvre sur un grand séjour avec mini bar, télévision et lecteur DVD, ainsi que des sanitaires.\r\n
\r\n
Le premier étage offre une chambre principale dotée d'un lit king size ainsi que d'une salle de bain et d'une terrasse attenantes.
"""
-active: true
-hotel: App\Entity\Hotels {#1152}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#9664
-elements: array:1 [
0 => App\Entity\RoomPrices {#2448
-id: 1409
-title: "Duplex Suite"
-room: App\Entity\Rooms {#2455}
-quantity: 1
-stayStartedAt: DateTimeImmutable @1736164800 {#2459
date: 2025-01-06 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746014400 {#2458
date: 2025-04-30 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2457
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2456
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 3
-doubleOccupancy: "555.00"
-singleOccupancy: "555.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: 60.0
-extraTeen: null
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2454
#collection: Doctrine\Common\Collections\ArrayCollection {#2453
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2455}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2452
#collection: Doctrine\Common\Collections\ArrayCollection {#2451
-elements: array:18 [
0 => App\Entity\RoomCapacities {#3714
-id: 2394
-room: App\Entity\Rooms {#2455}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3713
-id: 2395
-room: App\Entity\Rooms {#2455}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3712
-id: 2396
-room: App\Entity\Rooms {#2455}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3711
-id: 2397
-room: App\Entity\Rooms {#2455}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3710
-id: 2398
-room: App\Entity\Rooms {#2455}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3708
-id: 2399
-room: App\Entity\Rooms {#2455}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3651
-id: 2400
-room: App\Entity\Rooms {#2455}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3650
-id: 2401
-room: App\Entity\Rooms {#2455}
-adults: 1
-teens: 1
-children: 1
-babies: 1
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#3607
-id: 2402
-room: App\Entity\Rooms {#2455}
-adults: 1
-teens: 1
-children: 2
-babies: null
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#3605
-id: 2404
-room: App\Entity\Rooms {#2455}
-adults: 1
-teens: 1
-children: 3
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#3656
-id: 2405
-room: App\Entity\Rooms {#2455}
-adults: 1
-teens: 1
-children: 2
-babies: 1
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#3745
-id: 3320
-room: App\Entity\Rooms {#2455}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#3732
-id: 3321
-room: App\Entity\Rooms {#2455}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#3741
-id: 3322
-room: App\Entity\Rooms {#2455}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
14 => App\Entity\RoomCapacities {#3740
-id: 3323
-room: App\Entity\Rooms {#2455}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
15 => App\Entity\RoomCapacities {#3739
-id: 3324
-room: App\Entity\Rooms {#2455}
-adults: 2
-teens: null
-children: 2
-babies: 1
-isDefaultConfig: false
}
16 => App\Entity\RoomCapacities {#3738
-id: 3325
-room: App\Entity\Rooms {#2455}
-adults: 2
-teens: null
-children: 1
-babies: 2
-isDefaultConfig: false
}
17 => App\Entity\RoomCapacities {#3737
-id: 3326
-room: App\Entity\Rooms {#2455}
-adults: 2
-teens: null
-children: 3
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:18 [ …18]
-owner: App\Entity\Rooms {#2455}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2461
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729679982 {#2460
date: 2024-10-23 10:39:42.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "67189a2ef1be0703768426.jpg"
-gallery: App\Entity\Galleries {#2447
-id: 186
-hotel: null
-room: App\Entity\Rooms {#2455}
-images: Doctrine\ORM\PersistentCollection {#2446
#collection: Doctrine\Common\Collections\ArrayCollection {#2445
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2447}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Le Cardinal Resort - Duplex Suite"
}
-mediaDirSlug: "57"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "duplex-suite"
}
2 => App\Entity\Rooms {#2438
-id: 58
-name: "Penthouse Jacuzzi"
-description: """
La suite comprend une chambre principale king size, un coin salon, une élégante salle de bain avec baignoire jacuzzi et douche séparée, des toilettes et un dressing.\r\n
\r\n
Détendez-vous sur la terrasse joliment meublée au dernier étage avec une vue imprenable sur la plage épique de Trou aux Biches.
"""
-active: true
-hotel: App\Entity\Hotels {#1152}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#9691
-elements: array:1 [
0 => App\Entity\RoomPrices {#2394
-id: 1414
-title: "Penthouse Jacuzzi"
-room: App\Entity\Rooms {#2438}
-quantity: 2
-stayStartedAt: DateTimeImmutable @1736164800 {#2442
date: 2025-01-06 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746014400 {#2441
date: 2025-04-30 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2440
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2439
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 3
-doubleOccupancy: "555.00"
-singleOccupancy: "555.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: 60.0
-extraTeen: null
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2437
#collection: Doctrine\Common\Collections\ArrayCollection {#2436
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2438}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2435
#collection: Doctrine\Common\Collections\ArrayCollection {#2390
-elements: array:12 [
0 => App\Entity\RoomCapacities {#3736
-id: 2415
-room: App\Entity\Rooms {#2438}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3735
-id: 2416
-room: App\Entity\Rooms {#2438}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3742
-id: 2417
-room: App\Entity\Rooms {#2438}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3743
-id: 2418
-room: App\Entity\Rooms {#2438}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3754
-id: 2419
-room: App\Entity\Rooms {#2438}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3752
-id: 2420
-room: App\Entity\Rooms {#2438}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3753
-id: 2421
-room: App\Entity\Rooms {#2438}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3750
-id: 2422
-room: App\Entity\Rooms {#2438}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#3751
-id: 2423
-room: App\Entity\Rooms {#2438}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#3748
-id: 2424
-room: App\Entity\Rooms {#2438}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#3749
-id: 3327
-room: App\Entity\Rooms {#2438}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#3746
-id: 3328
-room: App\Entity\Rooms {#2438}
-adults: 1
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:12 [ …12]
-owner: App\Entity\Rooms {#2438}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2444
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729680115 {#2443
date: 2024-10-23 10:41:55.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "67189ab39b871297065203.jpg"
-gallery: App\Entity\Galleries {#2389
-id: 187
-hotel: null
-room: App\Entity\Rooms {#2438}
-images: Doctrine\ORM\PersistentCollection {#2396
#collection: Doctrine\Common\Collections\ArrayCollection {#2399
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2389}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Le Cardinal Resort - Penthouse Jacuzzi"
}
-mediaDirSlug: "58"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "penthouse-jacuzzi"
}
3 => App\Entity\Rooms {#2401
-id: 59
-name: "Deluxe Penthouse"
-description: """
Enveloppés d'un délicat tissu blanc, le lit king size à baldaquin, la lampe suspendue au plafond voûté en bois, le mobilier sur mesure, les larges fenêtres et portes terrasses, créent une atmosphère très chic et intimiste.\r\n
\r\n
La suite spacieuse de 87 m² dispose également d'un espace salon avec un canapé confortable de couleur beige, habillé de coussins blancs et verts pour se reposer ou s'adonner à la vue fondante du lagon bleu turquoise.\r\n
\r\n
Pour profiter de ces moments de tendresse, on peut se détendre sur les transats de la terrasse de 48 m², main dans la main et en sirotant une coupe de champagne bien frais, se détendre dans le bassin profond privé et, apprécier cet après-midi mémorable en contemplant l'océan bleu vers l'infini. …. une véritable expérience des sens……
"""
-active: true
-hotel: App\Entity\Hotels {#1152}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#9712
-elements: array:1 [
0 => App\Entity\RoomPrices {#2417
-id: 1419
-title: "Deluxe Penthouse"
-room: App\Entity\Rooms {#2401}
-quantity: 1
-stayStartedAt: DateTimeImmutable @1736164800 {#2395
date: 2025-01-06 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746014400 {#2402
date: 2025-04-30 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2405
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2406
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 3
-doubleOccupancy: "655.00"
-singleOccupancy: "655.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: 60.0
-extraTeen: null
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2408
#collection: Doctrine\Common\Collections\ArrayCollection {#2411
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2401}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2410
#collection: Doctrine\Common\Collections\ArrayCollection {#2407
-elements: array:12 [
0 => App\Entity\RoomCapacities {#3747
-id: 2425
-room: App\Entity\Rooms {#2401}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3744
-id: 2426
-room: App\Entity\Rooms {#2401}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3757
-id: 2427
-room: App\Entity\Rooms {#2401}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3758
-id: 2428
-room: App\Entity\Rooms {#2401}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3759
-id: 2429
-room: App\Entity\Rooms {#2401}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3760
-id: 2430
-room: App\Entity\Rooms {#2401}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3761
-id: 2431
-room: App\Entity\Rooms {#2401}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3762
-id: 2432
-room: App\Entity\Rooms {#2401}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#3763
-id: 2433
-room: App\Entity\Rooms {#2401}
-adults: 1
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#3764
-id: 2434
-room: App\Entity\Rooms {#2401}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#3765
-id: 2435
-room: App\Entity\Rooms {#2401}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#3766
-id: 2436
-room: App\Entity\Rooms {#2401}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:12 [ …12]
-owner: App\Entity\Rooms {#2401}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2398
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729698872 {#2400
date: 2024-10-23 15:54:32.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "6718e3f8aded0024241338.jpg"
-gallery: App\Entity\Galleries {#2419
-id: 195
-hotel: null
-room: App\Entity\Rooms {#2401}
-images: Doctrine\ORM\PersistentCollection {#2421
#collection: Doctrine\Common\Collections\ArrayCollection {#2424
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2419}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "le cardinal deluixe penthouse"
}
-mediaDirSlug: "59"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "deluxe-penthouse"
}
]
}
#initialized: true
-snapshot: array:4 [ …4]
-owner: App\Entity\Hotels {#1152}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#880 …}
-backRefFieldName: "hotel"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-address: "Route Côtiere, Trou aux Biches, Île Maurice"
-checkInTime: "16H00"
-checkOutTime: "6H00"
-babyAgeMax: "4"
-childAgeMax: "12"
-teenAgeMax: "18"
-extraCharges: Doctrine\ORM\PersistentCollection {#1155
#collection: Doctrine\Common\Collections\ArrayCollection {#1156
-elements: array:3 [
0 => App\Entity\ExtraCharges {#9756
-id: 40
-title: "Suppléments repas de Noêl"
-description: null
-adultExtra: 105.0
-babyExtra: null
-childExtra: null
-teenExtra: 75.0
-stayStartedAt: DateTimeImmutable @1734998400 {#9759
date: 2024-12-24 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1735084800 {#9758
date: 2024-12-25 00:00:00.0 UTC (+00:00)
}
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1152}
}
1 => App\Entity\ExtraCharges {#9767
-id: 41
-title: "Suppléments repas Saint Sylvestre"
-description: null
-adultExtra: 105.0
-babyExtra: null
-childExtra: 75.0
-teenExtra: null
-stayStartedAt: DateTimeImmutable @1735603200 {#9764
date: 2024-12-31 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1735689600 {#9766
date: 2025-01-01 00:00:00.0 UTC (+00:00)
}
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1152}
}
2 => App\Entity\ExtraCharges {#9768
-id: 173
-title: "Base Demi pension"
-description: null
-adultExtra: 0.0
-babyExtra: null
-childExtra: 0.0
-teenExtra: 0.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: true
-minNights: null
-hotel: App\Entity\Hotels {#1152}
}
]
}
#initialized: true
-snapshot: array:3 [ …3]
-owner: App\Entity\Hotels {#1152}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#876 …}
-backRefFieldName: "hotel"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-imageFile: null
-featuredImage: "66965b4ca2196925125289.jpg"
-gallery: App\Entity\Galleries {#1159
-id: 181
-hotel: App\Entity\Hotels {#1152}
-room: null
-images: Doctrine\ORM\PersistentCollection {#1160
#collection: Doctrine\Common\Collections\ArrayCollection {#1161
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1159}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Le Cardinal"
}
-mediaDirSlug: null
-offers: Doctrine\Common\Collections\ArrayCollection {#9859}
-highlighted: false
-services: array:1 [
0 => ""
]
-hlStartAt: null
-hlEndAt: null
-slug: "le-cardinal-resort"
}
-description: null
-stayStartAt: DateTimeImmutable @1736121600 {#9834
date: 2025-01-06 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1761868800 {#9835
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1730419200 {#9836
date: 2024-11-01 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1761868800 {#9837
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-reference: null
-minNights: 5
-maxNights: null
-earlyBookingDays: null
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#9839
#collection: Doctrine\Common\Collections\ArrayCollection {#9840
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#9838}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1075 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 10
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#9841
#collection: Doctrine\Common\Collections\ArrayCollection {#9842
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#9838}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1081 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-offers: Doctrine\ORM\PersistentCollection {#9843
#collection: Doctrine\Common\Collections\ArrayCollection {#9844
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#9838}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1085 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#9845
#collection: Doctrine\Common\Collections\ArrayCollection {#9846
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#9838}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1087 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#9847
#collection: Doctrine\Common\Collections\ArrayCollection {#9848
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#9838}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1093 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-extrasDiscount: null
-priority: 1
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
]
}
1 in
PromotionDTO.php
line 556:
if ($offer_min_nights) {
if($stay_nights < $offer_min_nights){
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle(), 'Min nights failure.');
}
return $this;
}
"181 - Contractuelle 10%"
2 in
PromotionDTO.php
line 556:
if ($offer_min_nights) {
if($stay_nights < $offer_min_nights){
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle(), 'Min nights failure.');
}
return $this;
}
"Min nights failure."
1 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
"Step 1. Offres valides : "
2 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
null
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : JW Marriott Resort - Chambre : #65 - Junior Suite has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#10099
+rpId: 1656
+adultsPrice: 810
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 810
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 810
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 810
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 810
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : JW Marriott Resort - Chambre : #66 - Ocean Junior Suite has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#10120
+rpId: 1662
+adultsPrice: 870
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 870
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 870
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 870
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 870
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : JW Marriott Resort - Chambre : #67 - Ocean Haven Balcony Junior Suite has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#10141
+rpId: 1668
+adultsPrice: 950
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 950
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 950
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 950
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 950
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : JW Marriott Resort - Chambre : #68 - Ocean Haven Junior Suite has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#10162
+rpId: 1674
+adultsPrice: 1050
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1050
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1050
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1050
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1050
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : JW Marriott Resort - Chambre : #69 - Heritage Balcony Junior Suite has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#10183
+rpId: 1680
+adultsPrice: 1150
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1150
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1150
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1150
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1150
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : JW Marriott Resort - Chambre : #70 - Heritage Beach Junior Suite has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#10204
+rpId: 1686
+adultsPrice: 1260
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1260
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1260
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1260
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1260
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : JW Marriott Resort - Chambre : #71 - Manor House Spa Suite has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#10225
+rpId: 1692
+adultsPrice: 1290
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1290
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1290
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1290
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1290
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : JW Marriott Resort - Chambre : #72 - Peninsula Balcony Suite has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#10246
+rpId: 1698
+adultsPrice: 1390
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1390
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1390
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1390
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1390
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : JW Marriott Resort - Chambre : #73 - Peninsula Beach Access Suite has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#10267
+rpId: 1704
+adultsPrice: 1680
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1680
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1680
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1680
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1680
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : JW Marriott Resort - Chambre : #74 - Le Morne Balcony Suite has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#10288
+rpId: 1710
+adultsPrice: 1870
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1870
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1870
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1870
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1870
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : JW Marriott Resort - Chambre : #75 - Le Morne Beach Access Suite has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#10309
+rpId: 1716
+adultsPrice: 2110
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 2110
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 2110
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 2110
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 2110
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
"Update Stay Rooms - Chambers Prices"
2 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
array:1 [
0 => array:11 [
0 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
"room_id" => 65
"room_picture" => "/uploads/rooms/65/666bd05be7492468713040.jpg"
"room_name" => "Junior Suite"
"room_slug" => "junior-suite"
"room_description" => "Les Junior Suites offrent une vue sur les jardins. Elles disposent d’un lit double King-size ou deux lits simples, d’un coin salon et d’une terrasse ou d’un balcon privé. La salle de bain est équipée d’une douche et d’une baignoire."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1656
"adult_amount" => 3240
"children_amount" => 0
"basis_amount" => 3240
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 810
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 810
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 810
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 810
"kids_price" => 0
]
]
]
]
1 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 66
"room_picture" => "/uploads/rooms/66/666bd0b111809828821688.jpg"
"room_name" => "Ocean Junior Suite"
"room_slug" => "ocean-junior-suite"
"room_description" => """
Les Ocean Junior Suites offrent une vue partielle sur l'océan. Elles disposent d’un lit King-size ou deux lits simples, d’un coin salon et d’une terrasse ou d’un balcon privé. La salle de bain est équipée d’une douche et d’une baignoire.\r\n
\r\n
2 adultes + 1 enfant de moins de 16 ans + 1 enfant de moins de 12 ans.
"""
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1662
"adult_amount" => 3480
"children_amount" => 0
"basis_amount" => 3480
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 870
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 870
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 870
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 870
"kids_price" => 0
]
]
]
]
2 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 67
"room_picture" => "/uploads/rooms/67/666843ef9ccfe592924695.jpeg"
"room_name" => "Ocean Haven Balcony Junior Suite"
"room_slug" => "ocean-haven-balcony-junior-suite"
"room_description" => "Les Ocean Haven Balcony Junior Suites se composent d’une chambre spacieuse avec un lit King-size, un canapé lit, et une salle de bain avec une douche et une jolie baignoire. Situées à proximité de la plage, elles disposent d’un balcon privé offrant une vue imprenable sur l’océan."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1668
"adult_amount" => 3800
"children_amount" => 0
"basis_amount" => 3800
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 950
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 950
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 950
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 950
"kids_price" => 0
]
]
]
]
3 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 68
"room_picture" => "/uploads/rooms/68/66684339d41dc378425367.jpeg"
"room_name" => "Ocean Haven Junior Suite"
"room_slug" => "ocean-haven-junior-suite"
"room_description" => "Les Ocean Haven Junior Suites, situées au rez-de-chaussée, se composent d’une chambre spacieuse avec un lit King-size, un canapé lit, et une salle de bain avec une douche et une jolie baignoire. Elles s’ouvrent sur une terrasse privée avec une vue à couper le souffle sur l’océan, et offrent un accès direct à la plage."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1674
"adult_amount" => 4200
"children_amount" => 0
"basis_amount" => 4200
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1050
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1050
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1050
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1050
"kids_price" => 0
]
]
]
]
4 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 69
"room_picture" => "/uploads/rooms/69/6668443a2ffd8763701476.jpeg"
"room_name" => "Heritage Balcony Junior Suite"
"room_slug" => "heritage-balcony-junior-suite"
"room_description" => "Les Heritage Balcony Junior Suites offrent une vue sur l'océan. Elles disposent d’un lit double King-size, d’un coin salon et d’une terrasse ou d’un balcon privé. La salle de bain est équipée d’une douche et d’une baignoire."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1680
"adult_amount" => 4600
"children_amount" => 0
"basis_amount" => 4600
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1150
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1150
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1150
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1150
"kids_price" => 0
]
]
]
]
5 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 70
"room_picture" => "/uploads/rooms/70/666844613cc59387036624.jpeg"
"room_name" => "Heritage Beach Junior Suite"
"room_slug" => "heritage-beach-junior-suite"
"room_description" => "Les Heritage Beach Junior Suites situées au rez-de-chaussée, se composent d’une chambre spacieuse avec un lit King-size, d’un canapé, et d’une salle de bain avec une douche à effet pluie et une jolie baignoire. Situées dans un emplacement privilégié, elles disposent d’une grande terrasse privée aménagée avec vue sur l’océan et offrent un accès direct à la plage."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1686
"adult_amount" => 5040
"children_amount" => 0
"basis_amount" => 5040
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1260
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1260
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1260
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1260
"kids_price" => 0
]
]
]
]
6 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 71
"room_picture" => "/uploads/rooms/71/6668448a564f4417592870.jpeg"
"room_name" => "Manor House Spa Suite"
"room_slug" => "manor-house-spa-suite"
"room_description" => "Nos 7 Suites Spa Manor, avec une superficie de 146 à 214 m², sont situées au 1er étage du Manor, le bâtiment principal à proximité immédiate de toutes les commodités. Elles comprennent une chambre avec un lit King Size, un coin salon, une salle de bain et un balcon aménagé de 46 m² avec une vue sur l'océan et la piscine. Des chambres communicantes sont disponibles sur demande."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1692
"adult_amount" => 5160
"children_amount" => 0
"basis_amount" => 5160
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1290
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1290
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1290
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1290
"kids_price" => 0
]
]
]
]
7 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 72
"room_picture" => "/uploads/rooms/72/666844b3cc7b3698837244.jpeg"
"room_name" => "Peninsula Balcony Suite"
"room_slug" => "peninsula-balcony-suite"
"room_description" => "Les Peninsula Balcony Suites offrent une vue sur la plage. Elles disposent d’un lit double King-size, d'un dressing, d’un salon et d’un balcon privé. La salle de bain est équipée d’une douche et d’une baignoire."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1698
"adult_amount" => 5560
"children_amount" => 0
"basis_amount" => 5560
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1390
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1390
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1390
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1390
"kids_price" => 0
]
]
]
]
8 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 73
"room_picture" => "/uploads/rooms/73/666843c460477096568287.jpeg"
"room_name" => "Peninsula Beach Access Suite"
"room_slug" => "peninsula-beach-access-suite"
"room_description" => "Les Peninsula Beach Access Suites situées au rez-de-chaussée, se composent d’une chambre spacieuse avec un lit King-size, d’un grand salon séparé, et d’un coin repas. Les suites comprennent aussi une magnifique salle de bain avec une douche à effet pluie et une jolie baignoire. Situées dans un emplacement privilégié, elles disposent d’une grande terrasse privée aménagée offrant des vues rares sur le célèbre spot de surf One-Eye ainsi que sur l’océan et offrent un accès direct à la plage."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1704
"adult_amount" => 6720
"children_amount" => 0
"basis_amount" => 6720
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1680
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1680
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1680
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1680
"kids_price" => 0
]
]
]
]
9 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 74
"room_picture" => "/uploads/rooms/74/6667faa72f384892923080.jpeg"
"room_name" => "Le Morne Balcony Suite"
"room_slug" => "le-morne-balcony-suite"
"room_description" => "Les suites Le Morne Balcony, dotées des plus grandes chambres de l’hôtel, se constituent d’un lit King-size, d’un salon séparé, et d’une salle de bain équipée d’une douche et d’une baignoire. Elles disposent d’un balcon privé offrant une superbe vue sur l’océan"
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1710
"adult_amount" => 7480
"children_amount" => 0
"basis_amount" => 7480
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1870
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1870
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1870
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1870
"kids_price" => 0
]
]
]
]
10 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 75
"room_picture" => "/uploads/rooms/75/6667fac6959f0352633172.jpeg"
"room_name" => "Le Morne Beach Access Suite"
"room_slug" => "le-morne-beach-access-suite"
"room_description" => "Les suites Le Morne Beach Access, dotées des plus grandes chambres de l’hôtel, se constituent d’un lit King-size, d’un salon séparé, et d’une salle de bain équipée d’une douche et d’une baignoire. Elles sont également dotées d’une spacieuse terrasse privée et offrent un accès direct à la plage."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1716
"adult_amount" => 8440
"children_amount" => 0
"basis_amount" => 8440
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 2110
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 2110
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 2110
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 2110
"kids_price" => 0
]
]
]
]
]
]
1 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
"Update Stay Rooms results"
2 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
array:11 [
0 => App\DTO\RoomStayDTO {#9927
-marginRate: 20
-id: 65
-name: "Junior Suite"
-slug: "junior-suite"
-picture: "/uploads/rooms/65/666bd05be7492468713040.jpg"
-description: "Les Junior Suites offrent une vue sur les jardins. Elles disposent d’un lit double King-size ou deux lits simples, d’un coin salon et d’une terrasse ou d’un balcon privé. La salle de bain est équipée d’une douche et d’une baignoire."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 188
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 810
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 810
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 810
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 810
"kids_price" => 0
]
]
"amount" => 3240
]
]
-totalRoomAmount: 3240.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#10334
-marginRate: 20
+extraId: 188
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 3240.0
+totalStayAmountWoDiscount: 3240.0
+totalStayAmount: 3240.0
+finalAmountWoDiscount: 3888.0
+finalAmount: 3888.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#10337
-marginRate: 20
+extraId: 43
+name: "Demi-pension par nuit et par personne"
+description: null
+stayTotalNights: 4
+dailyAdults: 180
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 720
+kidsExtrasAmount: 0
+stayExtrasAmount: 720
+stayRoomAmount: 3240.0
+totalStayAmountWoDiscount: 3960.0
+totalStayAmount: 3960.0
+finalAmountWoDiscount: 4752.0
+finalAmount: 4752.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#10344
-marginRate: 20
+extraId: 45
+name: "Pension complète par nuit et par personne"
+description: null
+stayTotalNights: 4
+dailyAdults: 270
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1080
+kidsExtrasAmount: 0
+stayExtrasAmount: 1080
+stayRoomAmount: 3240.0
+totalStayAmountWoDiscount: 4320.0
+totalStayAmount: 4320.0
+finalAmountWoDiscount: 5184.0
+finalAmount: 5184.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
1 => App\DTO\RoomStayDTO {#10284
-marginRate: 20
-id: 66
-name: "Ocean Junior Suite"
-slug: "ocean-junior-suite"
-picture: "/uploads/rooms/66/666bd0b111809828821688.jpg"
-description: """
Les Ocean Junior Suites offrent une vue partielle sur l'océan. Elles disposent d’un lit King-size ou deux lits simples, d’un coin salon et d’une terrasse ou d’un balcon privé. La salle de bain est équipée d’une douche et d’une baignoire.\r\n
\r\n
2 adultes + 1 enfant de moins de 16 ans + 1 enfant de moins de 12 ans.
"""
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 188
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 870
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 870
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 870
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 870
"kids_price" => 0
]
]
"amount" => 3480
]
]
-totalRoomAmount: 3480.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#10345
-marginRate: 20
+extraId: 188
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 3480.0
+totalStayAmountWoDiscount: 3480.0
+totalStayAmount: 3480.0
+finalAmountWoDiscount: 4176.0
+finalAmount: 4176.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#10346
-marginRate: 20
+extraId: 43
+name: "Demi-pension par nuit et par personne"
+description: null
+stayTotalNights: 4
+dailyAdults: 180
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 720
+kidsExtrasAmount: 0
+stayExtrasAmount: 720
+stayRoomAmount: 3480.0
+totalStayAmountWoDiscount: 4200.0
+totalStayAmount: 4200.0
+finalAmountWoDiscount: 5040.0
+finalAmount: 5040.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#10347
-marginRate: 20
+extraId: 45
+name: "Pension complète par nuit et par personne"
+description: null
+stayTotalNights: 4
+dailyAdults: 270
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1080
+kidsExtrasAmount: 0
+stayExtrasAmount: 1080
+stayRoomAmount: 3480.0
+totalStayAmountWoDiscount: 4560.0
+totalStayAmount: 4560.0
+finalAmountWoDiscount: 5472.0
+finalAmount: 5472.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
2 => App\DTO\RoomStayDTO {#10305
-marginRate: 20
-id: 67
-name: "Ocean Haven Balcony Junior Suite"
-slug: "ocean-haven-balcony-junior-suite"
-picture: "/uploads/rooms/67/666843ef9ccfe592924695.jpeg"
-description: "Les Ocean Haven Balcony Junior Suites se composent d’une chambre spacieuse avec un lit King-size, un canapé lit, et une salle de bain avec une douche et une jolie baignoire. Situées à proximité de la plage, elles disposent d’un balcon privé offrant une vue imprenable sur l’océan."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 188
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 950
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 950
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 950
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 950
"kids_price" => 0
]
]
"amount" => 3800
]
]
-totalRoomAmount: 3800.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#10348
-marginRate: 20
+extraId: 188
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 3800.0
+totalStayAmountWoDiscount: 3800.0
+totalStayAmount: 3800.0
+finalAmountWoDiscount: 4560.0
+finalAmount: 4560.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#10349
-marginRate: 20
+extraId: 43
+name: "Demi-pension par nuit et par personne"
+description: null
+stayTotalNights: 4
+dailyAdults: 180
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 720
+kidsExtrasAmount: 0
+stayExtrasAmount: 720
+stayRoomAmount: 3800.0
+totalStayAmountWoDiscount: 4520.0
+totalStayAmount: 4520.0
+finalAmountWoDiscount: 5424.0
+finalAmount: 5424.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#10350
-marginRate: 20
+extraId: 45
+name: "Pension complète par nuit et par personne"
+description: null
+stayTotalNights: 4
+dailyAdults: 270
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1080
+kidsExtrasAmount: 0
+stayExtrasAmount: 1080
+stayRoomAmount: 3800.0
+totalStayAmountWoDiscount: 4880.0
+totalStayAmount: 4880.0
+finalAmountWoDiscount: 5856.0
+finalAmount: 5856.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
3 => App\DTO\RoomStayDTO {#10304
-marginRate: 20
-id: 68
-name: "Ocean Haven Junior Suite"
-slug: "ocean-haven-junior-suite"
-picture: "/uploads/rooms/68/66684339d41dc378425367.jpeg"
-description: "Les Ocean Haven Junior Suites, situées au rez-de-chaussée, se composent d’une chambre spacieuse avec un lit King-size, un canapé lit, et une salle de bain avec une douche et une jolie baignoire. Elles s’ouvrent sur une terrasse privée avec une vue à couper le souffle sur l’océan, et offrent un accès direct à la plage."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 188
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1050
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1050
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1050
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1050
"kids_price" => 0
]
]
"amount" => 4200
]
]
-totalRoomAmount: 4200.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#10351
-marginRate: 20
+extraId: 188
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 4200.0
+totalStayAmountWoDiscount: 4200.0
+totalStayAmount: 4200.0
+finalAmountWoDiscount: 5040.0
+finalAmount: 5040.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#10352
-marginRate: 20
+extraId: 43
+name: "Demi-pension par nuit et par personne"
+description: null
+stayTotalNights: 4
+dailyAdults: 180
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 720
+kidsExtrasAmount: 0
+stayExtrasAmount: 720
+stayRoomAmount: 4200.0
+totalStayAmountWoDiscount: 4920.0
+totalStayAmount: 4920.0
+finalAmountWoDiscount: 5904.0
+finalAmount: 5904.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#10353
-marginRate: 20
+extraId: 45
+name: "Pension complète par nuit et par personne"
+description: null
+stayTotalNights: 4
+dailyAdults: 270
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1080
+kidsExtrasAmount: 0
+stayExtrasAmount: 1080
+stayRoomAmount: 4200.0
+totalStayAmountWoDiscount: 5280.0
+totalStayAmount: 5280.0
+finalAmountWoDiscount: 6336.0
+finalAmount: 6336.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
4 => App\DTO\RoomStayDTO {#10282
-marginRate: 20
-id: 69
-name: "Heritage Balcony Junior Suite"
-slug: "heritage-balcony-junior-suite"
-picture: "/uploads/rooms/69/6668443a2ffd8763701476.jpeg"
-description: "Les Heritage Balcony Junior Suites offrent une vue sur l'océan. Elles disposent d’un lit double King-size, d’un coin salon et d’une terrasse ou d’un balcon privé. La salle de bain est équipée d’une douche et d’une baignoire."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 188
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1150
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1150
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1150
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1150
"kids_price" => 0
]
]
"amount" => 4600
]
]
-totalRoomAmount: 4600.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#10354
-marginRate: 20
+extraId: 188
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 4600.0
+totalStayAmountWoDiscount: 4600.0
+totalStayAmount: 4600.0
+finalAmountWoDiscount: 5520.0
+finalAmount: 5520.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#10355
-marginRate: 20
+extraId: 43
+name: "Demi-pension par nuit et par personne"
+description: null
+stayTotalNights: 4
+dailyAdults: 180
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 720
+kidsExtrasAmount: 0
+stayExtrasAmount: 720
+stayRoomAmount: 4600.0
+totalStayAmountWoDiscount: 5320.0
+totalStayAmount: 5320.0
+finalAmountWoDiscount: 6384.0
+finalAmount: 6384.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#10356
-marginRate: 20
+extraId: 45
+name: "Pension complète par nuit et par personne"
+description: null
+stayTotalNights: 4
+dailyAdults: 270
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1080
+kidsExtrasAmount: 0
+stayExtrasAmount: 1080
+stayRoomAmount: 4600.0
+totalStayAmountWoDiscount: 5680.0
+totalStayAmount: 5680.0
+finalAmountWoDiscount: 6816.0
+finalAmount: 6816.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
5 => App\DTO\RoomStayDTO {#10323
-marginRate: 20
-id: 70
-name: "Heritage Beach Junior Suite"
-slug: "heritage-beach-junior-suite"
-picture: "/uploads/rooms/70/666844613cc59387036624.jpeg"
-description: "Les Heritage Beach Junior Suites situées au rez-de-chaussée, se composent d’une chambre spacieuse avec un lit King-size, d’un canapé, et d’une salle de bain avec une douche à effet pluie et une jolie baignoire. Situées dans un emplacement privilégié, elles disposent d’une grande terrasse privée aménagée avec vue sur l’océan et offrent un accès direct à la plage."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 188
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1260
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1260
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1260
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1260
"kids_price" => 0
]
]
"amount" => 5040
]
]
-totalRoomAmount: 5040.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#10357
-marginRate: 20
+extraId: 188
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 5040.0
+totalStayAmountWoDiscount: 5040.0
+totalStayAmount: 5040.0
+finalAmountWoDiscount: 6048.0
+finalAmount: 6048.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#10358
-marginRate: 20
+extraId: 43
+name: "Demi-pension par nuit et par personne"
+description: null
+stayTotalNights: 4
+dailyAdults: 180
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 720
+kidsExtrasAmount: 0
+stayExtrasAmount: 720
+stayRoomAmount: 5040.0
+totalStayAmountWoDiscount: 5760.0
+totalStayAmount: 5760.0
+finalAmountWoDiscount: 6912.0
+finalAmount: 6912.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#10359
-marginRate: 20
+extraId: 45
+name: "Pension complète par nuit et par personne"
+description: null
+stayTotalNights: 4
+dailyAdults: 270
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1080
+kidsExtrasAmount: 0
+stayExtrasAmount: 1080
+stayRoomAmount: 5040.0
+totalStayAmountWoDiscount: 6120.0
+totalStayAmount: 6120.0
+finalAmountWoDiscount: 7344.0
+finalAmount: 7344.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
6 => App\DTO\RoomStayDTO {#10298
-marginRate: 20
-id: 71
-name: "Manor House Spa Suite"
-slug: "manor-house-spa-suite"
-picture: "/uploads/rooms/71/6668448a564f4417592870.jpeg"
-description: "Nos 7 Suites Spa Manor, avec une superficie de 146 à 214 m², sont situées au 1er étage du Manor, le bâtiment principal à proximité immédiate de toutes les commodités. Elles comprennent une chambre avec un lit King Size, un coin salon, une salle de bain et un balcon aménagé de 46 m² avec une vue sur l'océan et la piscine. Des chambres communicantes sont disponibles sur demande."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 188
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1290
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1290
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1290
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1290
"kids_price" => 0
]
]
"amount" => 5160
]
]
-totalRoomAmount: 5160.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#10360
-marginRate: 20
+extraId: 188
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 5160.0
+totalStayAmountWoDiscount: 5160.0
+totalStayAmount: 5160.0
+finalAmountWoDiscount: 6192.0
+finalAmount: 6192.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#10361
-marginRate: 20
+extraId: 43
+name: "Demi-pension par nuit et par personne"
+description: null
+stayTotalNights: 4
+dailyAdults: 180
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 720
+kidsExtrasAmount: 0
+stayExtrasAmount: 720
+stayRoomAmount: 5160.0
+totalStayAmountWoDiscount: 5880.0
+totalStayAmount: 5880.0
+finalAmountWoDiscount: 7056.0
+finalAmount: 7056.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#10362
-marginRate: 20
+extraId: 45
+name: "Pension complète par nuit et par personne"
+description: null
+stayTotalNights: 4
+dailyAdults: 270
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1080
+kidsExtrasAmount: 0
+stayExtrasAmount: 1080
+stayRoomAmount: 5160.0
+totalStayAmountWoDiscount: 6240.0
+totalStayAmount: 6240.0
+finalAmountWoDiscount: 7488.0
+finalAmount: 7488.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
7 => App\DTO\RoomStayDTO {#10321
-marginRate: 20
-id: 72
-name: "Peninsula Balcony Suite"
-slug: "peninsula-balcony-suite"
-picture: "/uploads/rooms/72/666844b3cc7b3698837244.jpeg"
-description: "Les Peninsula Balcony Suites offrent une vue sur la plage. Elles disposent d’un lit double King-size, d'un dressing, d’un salon et d’un balcon privé. La salle de bain est équipée d’une douche et d’une baignoire."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 188
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1390
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1390
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1390
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1390
"kids_price" => 0
]
]
"amount" => 5560
]
]
-totalRoomAmount: 5560.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#10363
-marginRate: 20
+extraId: 188
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 5560.0
+totalStayAmountWoDiscount: 5560.0
+totalStayAmount: 5560.0
+finalAmountWoDiscount: 6672.0
+finalAmount: 6672.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#10364
-marginRate: 20
+extraId: 43
+name: "Demi-pension par nuit et par personne"
+description: null
+stayTotalNights: 4
+dailyAdults: 180
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 720
+kidsExtrasAmount: 0
+stayExtrasAmount: 720
+stayRoomAmount: 5560.0
+totalStayAmountWoDiscount: 6280.0
+totalStayAmount: 6280.0
+finalAmountWoDiscount: 7536.0
+finalAmount: 7536.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#10365
-marginRate: 20
+extraId: 45
+name: "Pension complète par nuit et par personne"
+description: null
+stayTotalNights: 4
+dailyAdults: 270
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1080
+kidsExtrasAmount: 0
+stayExtrasAmount: 1080
+stayRoomAmount: 5560.0
+totalStayAmountWoDiscount: 6640.0
+totalStayAmount: 6640.0
+finalAmountWoDiscount: 7968.0
+finalAmount: 7968.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
8 => App\DTO\RoomStayDTO {#10324
-marginRate: 20
-id: 73
-name: "Peninsula Beach Access Suite"
-slug: "peninsula-beach-access-suite"
-picture: "/uploads/rooms/73/666843c460477096568287.jpeg"
-description: "Les Peninsula Beach Access Suites situées au rez-de-chaussée, se composent d’une chambre spacieuse avec un lit King-size, d’un grand salon séparé, et d’un coin repas. Les suites comprennent aussi une magnifique salle de bain avec une douche à effet pluie et une jolie baignoire. Situées dans un emplacement privilégié, elles disposent d’une grande terrasse privée aménagée offrant des vues rares sur le célèbre spot de surf One-Eye ainsi que sur l’océan et offrent un accès direct à la plage."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 188
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1680
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1680
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1680
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1680
"kids_price" => 0
]
]
"amount" => 6720
]
]
-totalRoomAmount: 6720.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#10366
-marginRate: 20
+extraId: 188
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 6720.0
+totalStayAmountWoDiscount: 6720.0
+totalStayAmount: 6720.0
+finalAmountWoDiscount: 8064.0
+finalAmount: 8064.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#10367
-marginRate: 20
+extraId: 43
+name: "Demi-pension par nuit et par personne"
+description: null
+stayTotalNights: 4
+dailyAdults: 180
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 720
+kidsExtrasAmount: 0
+stayExtrasAmount: 720
+stayRoomAmount: 6720.0
+totalStayAmountWoDiscount: 7440.0
+totalStayAmount: 7440.0
+finalAmountWoDiscount: 8928.0
+finalAmount: 8928.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#10368
-marginRate: 20
+extraId: 45
+name: "Pension complète par nuit et par personne"
+description: null
+stayTotalNights: 4
+dailyAdults: 270
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1080
+kidsExtrasAmount: 0
+stayExtrasAmount: 1080
+stayRoomAmount: 6720.0
+totalStayAmountWoDiscount: 7800.0
+totalStayAmount: 7800.0
+finalAmountWoDiscount: 9360.0
+finalAmount: 9360.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
9 => App\DTO\RoomStayDTO {#10325
-marginRate: 20
-id: 74
-name: "Le Morne Balcony Suite"
-slug: "le-morne-balcony-suite"
-picture: "/uploads/rooms/74/6667faa72f384892923080.jpeg"
-description: "Les suites Le Morne Balcony, dotées des plus grandes chambres de l’hôtel, se constituent d’un lit King-size, d’un salon séparé, et d’une salle de bain équipée d’une douche et d’une baignoire. Elles disposent d’un balcon privé offrant une superbe vue sur l’océan"
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 188
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1870
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1870
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1870
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1870
"kids_price" => 0
]
]
"amount" => 7480
]
]
-totalRoomAmount: 7480.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#10369
-marginRate: 20
+extraId: 188
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 7480.0
+totalStayAmountWoDiscount: 7480.0
+totalStayAmount: 7480.0
+finalAmountWoDiscount: 8976.0
+finalAmount: 8976.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#10370
-marginRate: 20
+extraId: 43
+name: "Demi-pension par nuit et par personne"
+description: null
+stayTotalNights: 4
+dailyAdults: 180
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 720
+kidsExtrasAmount: 0
+stayExtrasAmount: 720
+stayRoomAmount: 7480.0
+totalStayAmountWoDiscount: 8200.0
+totalStayAmount: 8200.0
+finalAmountWoDiscount: 9840.0
+finalAmount: 9840.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#10371
-marginRate: 20
+extraId: 45
+name: "Pension complète par nuit et par personne"
+description: null
+stayTotalNights: 4
+dailyAdults: 270
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1080
+kidsExtrasAmount: 0
+stayExtrasAmount: 1080
+stayRoomAmount: 7480.0
+totalStayAmountWoDiscount: 8560.0
+totalStayAmount: 8560.0
+finalAmountWoDiscount: 10272.0
+finalAmount: 10272.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
10 => App\DTO\RoomStayDTO {#10326
-marginRate: 20
-id: 75
-name: "Le Morne Beach Access Suite"
-slug: "le-morne-beach-access-suite"
-picture: "/uploads/rooms/75/6667fac6959f0352633172.jpeg"
-description: "Les suites Le Morne Beach Access, dotées des plus grandes chambres de l’hôtel, se constituent d’un lit King-size, d’un salon séparé, et d’une salle de bain équipée d’une douche et d’une baignoire. Elles sont également dotées d’une spacieuse terrasse privée et offrent un accès direct à la plage."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 188
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 2110
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 2110
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 2110
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 2110
"kids_price" => 0
]
]
"amount" => 8440
]
]
-totalRoomAmount: 8440.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#10372
-marginRate: 20
+extraId: 188
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 8440.0
+totalStayAmountWoDiscount: 8440.0
+totalStayAmount: 8440.0
+finalAmountWoDiscount: 10128.0
+finalAmount: 10128.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#10373
-marginRate: 20
+extraId: 43
+name: "Demi-pension par nuit et par personne"
+description: null
+stayTotalNights: 4
+dailyAdults: 180
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 720
+kidsExtrasAmount: 0
+stayExtrasAmount: 720
+stayRoomAmount: 8440.0
+totalStayAmountWoDiscount: 9160.0
+totalStayAmount: 9160.0
+finalAmountWoDiscount: 10992.0
+finalAmount: 10992.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#10374
-marginRate: 20
+extraId: 45
+name: "Pension complète par nuit et par personne"
+description: null
+stayTotalNights: 4
+dailyAdults: 270
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1080
+kidsExtrasAmount: 0
+stayExtrasAmount: 1080
+stayRoomAmount: 8440.0
+totalStayAmountWoDiscount: 9520.0
+totalStayAmount: 9520.0
+finalAmountWoDiscount: 11424.0
+finalAmount: 11424.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
]
1 in
RoomStayCalculation.php
line 274:
{
$offers_eligibled = [];
if ($this->debug) {
dump('All available offers of the hotel', $offers);
}
foreach ($offers as $key => $offer) {
"All available offers of the hotel"
2 in
RoomStayCalculation.php
line 274:
{
$offers_eligibled = [];
if ($this->debug) {
dump('All available offers of the hotel', $offers);
}
foreach ($offers as $key => $offer) {
Doctrine\Common\Collections\ArrayCollection {#10590
-elements: array:3 [
0 => App\Entity\Offers {#10449
-id: 109
-title: "LONG STAY JW"
-type: "LongStay"
-hotel: App\Entity\Hotels {#1164
-id: 12
-name: "JW Marriott Resort"
-description: "En tant qu'hôtel 5 étoiles à l'île Maurice situé à Balaclava, notre engagement envers votre bien-être va au-delà des frontières de notre resort. L'île Maurice, célèbre pour sa beauté pittoresque et ses plages paradisiaques, devient le cadre idéal pour une escapade mémorable. Au Westin Turtle Bay Resort & Spa Mauritius, notre formule tout compris à l'île Maurice vous offre bien plus qu'un séjour confortable. Elle vous permet d'explorer cette destination enchanteresse en toute sérénité. Notre équipe dévouée se fait un plaisir de vous guider à travers une multitude d'activités locales, vous permettant ainsi de vivre pleinement l'essence même de l'île Maurice, de ses saveurs exotiques à ses paysages époustouflants.Dans notre hôtel, chaque détail est conçu pour vous offrir une expérience inoubliable à l'île Maurice. Nos installations haut de gamme, notre service attentif et notre emplacement privilégié à Turtle Bay font de votre séjour un véritable moment de détente et de découverte, où chaque journée apporte son lot de souvenirs à chérir."
-website: "https://www.marriott.com/fr/hotels/mrujw-jw-marriott-mauritius-resort/overview/"
-stars: 5
-youtubeVideoId: "jOkFrOwFwV8"
-phone: "+230 403 9000"
-email: "booking@westinresortmauritius.com"
-active: true
-gmapUrl: "<iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3738.097895852997!2d57.30765021217894!3d-20.46117198097086!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x217c6d1c299f7aef%3A0x7ca8ca3fc64351f!2sJW%20Marriott%20Mauritius%20Resort!5e0!3m2!1sfr!2sfr!4v1718969167047!5m2!1sfr!2sfr" width="100%" height="600" style="border:0;" allowfullscreen="" loading="lazy" referrerpolicy="no-referrer-when-downgrade"></iframe>"
-zone: "Sud-Ouest"
-createdAt: DateTimeImmutable @1714145854 {#1162
date: 2024-04-26 15:37:34.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672825 {#1163
date: 2024-10-23 08:40:25.0 UTC (+00:00)
}
-rooms: Doctrine\ORM\PersistentCollection {#1165
#collection: Doctrine\Common\Collections\ArrayCollection {#1166
-elements: array:11 [
0 => App\Entity\Rooms {#2549
-id: 65
-name: "Junior Suite"
-description: "Les Junior Suites offrent une vue sur les jardins. Elles disposent d’un lit double King-size ou deux lits simples, d’un coin salon et d’une terrasse ou d’un balcon privé. La salle de bain est équipée d’une douche et d’une baignoire."
-active: true
-hotel: App\Entity\Hotels {#1164}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#10091
-elements: array:1 [
0 => App\Entity\RoomPrices {#2505
-id: 1656
-title: "Junior Suite - High Season"
-room: App\Entity\Rooms {#2549}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736510400 {#2375
date: 2025-01-10 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746878400 {#2420
date: 2025-05-10 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2551
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2550
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "810.00"
-singleOccupancy: "790.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 90.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2548
#collection: Doctrine\Common\Collections\ArrayCollection {#2547
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2549}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2546
#collection: Doctrine\Common\Collections\ArrayCollection {#2501
-elements: array:16 [
0 => App\Entity\RoomCapacities {#3800
-id: 3100
-room: App\Entity\Rooms {#2549}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3799
-id: 3101
-room: App\Entity\Rooms {#2549}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3798
-id: 3102
-room: App\Entity\Rooms {#2549}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3797
-id: 3103
-room: App\Entity\Rooms {#2549}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3796
-id: 3104
-room: App\Entity\Rooms {#2549}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3795
-id: 3105
-room: App\Entity\Rooms {#2549}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3794
-id: 3106
-room: App\Entity\Rooms {#2549}
-adults: 1
-teens: 1
-children: 1
-babies: 1
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3793
-id: 3107
-room: App\Entity\Rooms {#2549}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#3792
-id: 3108
-room: App\Entity\Rooms {#2549}
-adults: 1
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#3791
-id: 3109
-room: App\Entity\Rooms {#2549}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#3790
-id: 3110
-room: App\Entity\Rooms {#2549}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#3789
-id: 3111
-room: App\Entity\Rooms {#2549}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#3788
-id: 3112
-room: App\Entity\Rooms {#2549}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#3787
-id: 3113
-room: App\Entity\Rooms {#2549}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
14 => App\Entity\RoomCapacities {#3786
-id: 3114
-room: App\Entity\Rooms {#2549}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
15 => App\Entity\RoomCapacities {#3785
-id: 3115
-room: App\Entity\Rooms {#2549}
-adults: 2
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:16 [ …16]
-owner: App\Entity\Rooms {#2549}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2556
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2527
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666bd05be7492468713040.jpg"
-gallery: App\Entity\Galleries {#2500
-id: 64
-hotel: null
-room: App\Entity\Rooms {#2549}
-images: Doctrine\ORM\PersistentCollection {#2507
#collection: Doctrine\Common\Collections\ArrayCollection {#2510
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2500}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "JW junior suite"
}
-mediaDirSlug: "65"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "junior-suite"
}
1 => App\Entity\Rooms {#2517
-id: 66
-name: "Ocean Junior Suite"
-description: """
Les Ocean Junior Suites offrent une vue partielle sur l'océan. Elles disposent d’un lit King-size ou deux lits simples, d’un coin salon et d’une terrasse ou d’un balcon privé. La salle de bain est équipée d’une douche et d’une baignoire.\r\n
\r\n
2 adultes + 1 enfant de moins de 16 ans + 1 enfant de moins de 12 ans.
"""
-active: true
-hotel: App\Entity\Hotels {#1164}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#9881
-elements: array:1 [
0 => App\Entity\RoomPrices {#2526
-id: 1662
-title: "Ocean Junior Suite - High Season"
-room: App\Entity\Rooms {#2517}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736510400 {#2506
date: 2025-01-10 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746878400 {#2513
date: 2025-05-10 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2516
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2515
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "870.00"
-singleOccupancy: "850.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 90.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2512
#collection: Doctrine\Common\Collections\ArrayCollection {#2519
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2517}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2522
#collection: Doctrine\Common\Collections\ArrayCollection {#2521
-elements: array:24 [
0 => App\Entity\RoomCapacities {#3784
-id: 2474
-room: App\Entity\Rooms {#2517}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3783
-id: 2475
-room: App\Entity\Rooms {#2517}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3782
-id: 2476
-room: App\Entity\Rooms {#2517}
-adults: 2
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3781
-id: 2477
-room: App\Entity\Rooms {#2517}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3780
-id: 2478
-room: App\Entity\Rooms {#2517}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3779
-id: 2479
-room: App\Entity\Rooms {#2517}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3778
-id: 2480
-room: App\Entity\Rooms {#2517}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3777
-id: 2481
-room: App\Entity\Rooms {#2517}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#3776
-id: 3116
-room: App\Entity\Rooms {#2517}
-adults: 2
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#3774
-id: 3117
-room: App\Entity\Rooms {#2517}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#3773
-id: 3118
-room: App\Entity\Rooms {#2517}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#3772
-id: 3119
-room: App\Entity\Rooms {#2517}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#3771
-id: 3120
-room: App\Entity\Rooms {#2517}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#3770
-id: 3121
-room: App\Entity\Rooms {#2517}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
14 => App\Entity\RoomCapacities {#3769
-id: 3122
-room: App\Entity\Rooms {#2517}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
15 => App\Entity\RoomCapacities {#3767
-id: 3123
-room: App\Entity\Rooms {#2517}
-adults: 1
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
16 => App\Entity\RoomCapacities {#3728
-id: 3124
-room: App\Entity\Rooms {#2517}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
17 => App\Entity\RoomCapacities {#3729
-id: 3125
-room: App\Entity\Rooms {#2517}
-adults: 1
-teens: 1
-children: 1
-babies: 1
-isDefaultConfig: false
}
18 => App\Entity\RoomCapacities {#3655
-id: 3126
-room: App\Entity\Rooms {#2517}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
19 => App\Entity\RoomCapacities {#3653
-id: 3127
-room: App\Entity\Rooms {#2517}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
20 => App\Entity\RoomCapacities {#3734
-id: 3128
-room: App\Entity\Rooms {#2517}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
21 => App\Entity\RoomCapacities {#3818
-id: 3129
-room: App\Entity\Rooms {#2517}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
22 => App\Entity\RoomCapacities {#3805
-id: 3130
-room: App\Entity\Rooms {#2517}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
23 => App\Entity\RoomCapacities {#3814
-id: 3131
-room: App\Entity\Rooms {#2517}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:24 [ …24]
-owner: App\Entity\Rooms {#2517}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2509
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2511
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666bd0b111809828821688.jpg"
-gallery: App\Entity\Galleries {#2529
-id: 65
-hotel: null
-room: App\Entity\Rooms {#2517}
-images: Doctrine\ORM\PersistentCollection {#2528
#collection: Doctrine\Common\Collections\ArrayCollection {#2530
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2529}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "JW ocean junior suite"
}
-mediaDirSlug: "66"
-lowerRoomPrice: null
-services: null
-slug: "ocean-junior-suite"
}
2 => App\Entity\Rooms {#2537
-id: 67
-name: "Ocean Haven Balcony Junior Suite"
-description: "Les Ocean Haven Balcony Junior Suites se composent d’une chambre spacieuse avec un lit King-size, un canapé lit, et une salle de bain avec une douche et une jolie baignoire. Situées à proximité de la plage, elles disposent d’un balcon privé offrant une vue imprenable sur l’océan."
-active: true
-hotel: App\Entity\Hotels {#1164}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#10109
-elements: array:1 [
0 => App\Entity\RoomPrices {#2483
-id: 1668
-title: "Ocean Haven Balcony Junior Suite - High Season"
-room: App\Entity\Rooms {#2537}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736510400 {#2535
date: 2025-01-10 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746878400 {#2534
date: 2025-05-10 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2536
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2531
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "950.00"
-singleOccupancy: "930.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 90.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2524
#collection: Doctrine\Common\Collections\ArrayCollection {#2538
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2537}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2499
#collection: Doctrine\Common\Collections\ArrayCollection {#2540
-elements: array:24 [
0 => App\Entity\RoomCapacities {#3813
-id: 2482
-room: App\Entity\Rooms {#2537}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3812
-id: 2483
-room: App\Entity\Rooms {#2537}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3811
-id: 2484
-room: App\Entity\Rooms {#2537}
-adults: 2
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3810
-id: 2485
-room: App\Entity\Rooms {#2537}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3809
-id: 2486
-room: App\Entity\Rooms {#2537}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3808
-id: 2487
-room: App\Entity\Rooms {#2537}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3815
-id: 2488
-room: App\Entity\Rooms {#2537}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3816
-id: 2489
-room: App\Entity\Rooms {#2537}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#3841
-id: 3132
-room: App\Entity\Rooms {#2537}
-adults: 2
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#3839
-id: 3133
-room: App\Entity\Rooms {#2537}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#3840
-id: 3134
-room: App\Entity\Rooms {#2537}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#3837
-id: 3135
-room: App\Entity\Rooms {#2537}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#3838
-id: 3136
-room: App\Entity\Rooms {#2537}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#3835
-id: 3137
-room: App\Entity\Rooms {#2537}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
14 => App\Entity\RoomCapacities {#3836
-id: 3138
-room: App\Entity\Rooms {#2537}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
15 => App\Entity\RoomCapacities {#3833
-id: 3139
-room: App\Entity\Rooms {#2537}
-adults: 1
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
16 => App\Entity\RoomCapacities {#3834
-id: 3140
-room: App\Entity\Rooms {#2537}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
17 => App\Entity\RoomCapacities {#3831
-id: 3141
-room: App\Entity\Rooms {#2537}
-adults: 1
-teens: 1
-children: 1
-babies: 1
-isDefaultConfig: false
}
18 => App\Entity\RoomCapacities {#3832
-id: 3142
-room: App\Entity\Rooms {#2537}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
19 => App\Entity\RoomCapacities {#3829
-id: 3143
-room: App\Entity\Rooms {#2537}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
20 => App\Entity\RoomCapacities {#3830
-id: 3144
-room: App\Entity\Rooms {#2537}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
21 => App\Entity\RoomCapacities {#3827
-id: 3145
-room: App\Entity\Rooms {#2537}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
22 => App\Entity\RoomCapacities {#3828
-id: 3146
-room: App\Entity\Rooms {#2537}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
23 => App\Entity\RoomCapacities {#3825
-id: 3147
-room: App\Entity\Rooms {#2537}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:24 [ …24]
-owner: App\Entity\Rooms {#2537}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2525
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2532
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666843ef9ccfe592924695.jpeg"
-gallery: App\Entity\Galleries {#2484
-id: 95
-hotel: null
-room: App\Entity\Rooms {#2537}
-images: Doctrine\ORM\PersistentCollection {#2485
#collection: Doctrine\Common\Collections\ArrayCollection {#2486
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2484}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "JW ocean haven balcony junior suite"
}
-mediaDirSlug: "67"
-lowerRoomPrice: null
-services: null
-slug: "ocean-haven-balcony-junior-suite"
}
3 => App\Entity\Rooms {#2494
-id: 68
-name: "Ocean Haven Junior Suite"
-description: "Les Ocean Haven Junior Suites, situées au rez-de-chaussée, se composent d’une chambre spacieuse avec un lit King-size, un canapé lit, et une salle de bain avec une douche et une jolie baignoire. Elles s’ouvrent sur une terrasse privée avec une vue à couper le souffle sur l’océan, et offrent un accès direct à la plage."
-active: true
-hotel: App\Entity\Hotels {#1164}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#10130
-elements: array:1 [
0 => App\Entity\RoomPrices {#2514
-id: 1674
-title: "Ocean Haven Junior Suite - High Season"
-room: App\Entity\Rooms {#2494}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736510400 {#2489
date: 2025-01-10 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746878400 {#2490
date: 2025-05-10 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2491
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2493
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "1050.00"
-singleOccupancy: "1030.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 90.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2495
#collection: Doctrine\Common\Collections\ArrayCollection {#2496
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2494}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2497
#collection: Doctrine\Common\Collections\ArrayCollection {#2477
-elements: array:20 [
0 => App\Entity\RoomCapacities {#3826
-id: 2490
-room: App\Entity\Rooms {#2494}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3823
-id: 2491
-room: App\Entity\Rooms {#2494}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3824
-id: 2492
-room: App\Entity\Rooms {#2494}
-adults: 2
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3821
-id: 2493
-room: App\Entity\Rooms {#2494}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3822
-id: 3148
-room: App\Entity\Rooms {#2494}
-adults: 2
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3819
-id: 3149
-room: App\Entity\Rooms {#2494}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3820
-id: 3150
-room: App\Entity\Rooms {#2494}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3817
-id: 3151
-room: App\Entity\Rooms {#2494}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#3844
-id: 3152
-room: App\Entity\Rooms {#2494}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#3845
-id: 3153
-room: App\Entity\Rooms {#2494}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#3846
-id: 3154
-room: App\Entity\Rooms {#2494}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#3847
-id: 3155
-room: App\Entity\Rooms {#2494}
-adults: 1
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#3848
-id: 3156
-room: App\Entity\Rooms {#2494}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#3849
-id: 3157
-room: App\Entity\Rooms {#2494}
-adults: 1
-teens: 1
-children: 1
-babies: 1
-isDefaultConfig: false
}
14 => App\Entity\RoomCapacities {#3850
-id: 3158
-room: App\Entity\Rooms {#2494}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
15 => App\Entity\RoomCapacities {#3851
-id: 3159
-room: App\Entity\Rooms {#2494}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
16 => App\Entity\RoomCapacities {#3852
-id: 3160
-room: App\Entity\Rooms {#2494}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
17 => App\Entity\RoomCapacities {#3853
-id: 3161
-room: App\Entity\Rooms {#2494}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
18 => App\Entity\RoomCapacities {#3854
-id: 3162
-room: App\Entity\Rooms {#2494}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
19 => App\Entity\RoomCapacities {#3855
-id: 3163
-room: App\Entity\Rooms {#2494}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:20 [ …20]
-owner: App\Entity\Rooms {#2494}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2487
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2488
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "66684339d41dc378425367.jpeg"
-gallery: App\Entity\Galleries {#2520
-id: 194
-hotel: null
-room: App\Entity\Rooms {#2494}
-images: Doctrine\ORM\PersistentCollection {#2533
#collection: Doctrine\Common\Collections\ArrayCollection {#2539
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2520}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "jw ocean heaven"
}
-mediaDirSlug: "68"
-lowerRoomPrice: null
-services: null
-slug: "ocean-haven-junior-suite"
}
4 => App\Entity\Rooms {#2379
-id: 69
-name: "Heritage Balcony Junior Suite"
-description: "Les Heritage Balcony Junior Suites offrent une vue sur l'océan. Elles disposent d’un lit double King-size, d’un coin salon et d’une terrasse ou d’un balcon privé. La salle de bain est équipée d’une douche et d’une baignoire."
-active: true
-hotel: App\Entity\Hotels {#1164}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#10151
-elements: array:1 [
0 => App\Entity\RoomPrices {#2429
-id: 1680
-title: "Heritage Balcony Junior Suite - High Season"
-room: App\Entity\Rooms {#2379}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736510400 {#1300
date: 2025-01-10 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746878400 {#2280
date: 2025-05-10 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2364
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2383
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "1150.00"
-singleOccupancy: "1130.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 90.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2377
#collection: Doctrine\Common\Collections\ArrayCollection {#2376
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2379}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2374
#collection: Doctrine\Common\Collections\ArrayCollection {#2373
-elements: array:24 [
0 => App\Entity\RoomCapacities {#3856
-id: 2494
-room: App\Entity\Rooms {#2379}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3857
-id: 2495
-room: App\Entity\Rooms {#2379}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3858
-id: 2496
-room: App\Entity\Rooms {#2379}
-adults: 2
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3859
-id: 2497
-room: App\Entity\Rooms {#2379}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3860
-id: 2498
-room: App\Entity\Rooms {#2379}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3861
-id: 2499
-room: App\Entity\Rooms {#2379}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3862
-id: 2500
-room: App\Entity\Rooms {#2379}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3863
-id: 2501
-room: App\Entity\Rooms {#2379}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#3864
-id: 3164
-room: App\Entity\Rooms {#2379}
-adults: 2
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#3865
-id: 3165
-room: App\Entity\Rooms {#2379}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#3866
-id: 3166
-room: App\Entity\Rooms {#2379}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#3867
-id: 3167
-room: App\Entity\Rooms {#2379}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#3868
-id: 3168
-room: App\Entity\Rooms {#2379}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#3869
-id: 3169
-room: App\Entity\Rooms {#2379}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
14 => App\Entity\RoomCapacities {#3870
-id: 3170
-room: App\Entity\Rooms {#2379}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
15 => App\Entity\RoomCapacities {#3871
-id: 3171
-room: App\Entity\Rooms {#2379}
-adults: 1
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
16 => App\Entity\RoomCapacities {#3872
-id: 3172
-room: App\Entity\Rooms {#2379}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
17 => App\Entity\RoomCapacities {#3873
-id: 3173
-room: App\Entity\Rooms {#2379}
-adults: 1
-teens: 1
-children: 1
-babies: 1
-isDefaultConfig: false
}
18 => App\Entity\RoomCapacities {#3874
-id: 3174
-room: App\Entity\Rooms {#2379}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
19 => App\Entity\RoomCapacities {#3875
-id: 3175
-room: App\Entity\Rooms {#2379}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
20 => App\Entity\RoomCapacities {#3876
-id: 3176
-room: App\Entity\Rooms {#2379}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
21 => App\Entity\RoomCapacities {#3877
-id: 3177
-room: App\Entity\Rooms {#2379}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
22 => App\Entity\RoomCapacities {#3878
-id: 3178
-room: App\Entity\Rooms {#2379}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
23 => App\Entity\RoomCapacities {#3879
-id: 3179
-room: App\Entity\Rooms {#2379}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:24 [ …24]
-owner: App\Entity\Rooms {#2379}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2541
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#1894
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "6668443a2ffd8763701476.jpeg"
-gallery: App\Entity\Galleries {#2427
-id: 96
-hotel: null
-room: App\Entity\Rooms {#2379}
-images: Doctrine\ORM\PersistentCollection {#2423
#collection: Doctrine\Common\Collections\ArrayCollection {#2475
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2427}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "JW heritage balcony junior suite"
}
-mediaDirSlug: "69"
-lowerRoomPrice: null
-services: null
-slug: "heritage-balcony-junior-suite"
}
5 => App\Entity\Rooms {#2610
-id: 70
-name: "Heritage Beach Junior Suite"
-description: "Les Heritage Beach Junior Suites situées au rez-de-chaussée, se composent d’une chambre spacieuse avec un lit King-size, d’un canapé, et d’une salle de bain avec une douche à effet pluie et une jolie baignoire. Situées dans un emplacement privilégié, elles disposent d’une grande terrasse privée aménagée avec vue sur l’océan et offrent un accès direct à la plage."
-active: true
-hotel: App\Entity\Hotels {#1164}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#10172
-elements: array:1 [
0 => App\Entity\RoomPrices {#2575
-id: 1686
-title: "Heritage Beach Junior Suite - High Season"
-room: App\Entity\Rooms {#2610}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736510400 {#980
date: 2025-01-10 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746878400 {#2311
date: 2025-05-10 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2618
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2616
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "1260.00"
-singleOccupancy: "1240.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 90.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2604
#collection: Doctrine\Common\Collections\ArrayCollection {#2597
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2610}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2591
#collection: Doctrine\Common\Collections\ArrayCollection {#2585
-elements: array:24 [
0 => App\Entity\RoomCapacities {#3880
-id: 2502
-room: App\Entity\Rooms {#2610}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3881
-id: 2503
-room: App\Entity\Rooms {#2610}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3882
-id: 2504
-room: App\Entity\Rooms {#2610}
-adults: 2
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3883
-id: 2505
-room: App\Entity\Rooms {#2610}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3884
-id: 2506
-room: App\Entity\Rooms {#2610}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3885
-id: 2507
-room: App\Entity\Rooms {#2610}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3886
-id: 2508
-room: App\Entity\Rooms {#2610}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3887
-id: 2509
-room: App\Entity\Rooms {#2610}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#3888
-id: 3180
-room: App\Entity\Rooms {#2610}
-adults: 2
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#3889
-id: 3181
-room: App\Entity\Rooms {#2610}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#3890
-id: 3182
-room: App\Entity\Rooms {#2610}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#3891
-id: 3183
-room: App\Entity\Rooms {#2610}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#3892
-id: 3184
-room: App\Entity\Rooms {#2610}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#3893
-id: 3185
-room: App\Entity\Rooms {#2610}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
14 => App\Entity\RoomCapacities {#3894
-id: 3186
-room: App\Entity\Rooms {#2610}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
15 => App\Entity\RoomCapacities {#3895
-id: 3187
-room: App\Entity\Rooms {#2610}
-adults: 1
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
16 => App\Entity\RoomCapacities {#3896
-id: 3188
-room: App\Entity\Rooms {#2610}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
17 => App\Entity\RoomCapacities {#3897
-id: 3189
-room: App\Entity\Rooms {#2610}
-adults: 1
-teens: 1
-children: 1
-babies: 1
-isDefaultConfig: false
}
18 => App\Entity\RoomCapacities {#3898
-id: 3190
-room: App\Entity\Rooms {#2610}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
19 => App\Entity\RoomCapacities {#3899
-id: 3191
-room: App\Entity\Rooms {#2610}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
20 => App\Entity\RoomCapacities {#3900
-id: 3192
-room: App\Entity\Rooms {#2610}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
21 => App\Entity\RoomCapacities {#3901
-id: 3193
-room: App\Entity\Rooms {#2610}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
22 => App\Entity\RoomCapacities {#3902
-id: 3194
-room: App\Entity\Rooms {#2610}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
23 => App\Entity\RoomCapacities {#3903
-id: 3195
-room: App\Entity\Rooms {#2610}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:24 [ …24]
-owner: App\Entity\Rooms {#2610}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2378
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2476
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666844613cc59387036624.jpeg"
-gallery: App\Entity\Galleries {#2574
-id: 97
-hotel: null
-room: App\Entity\Rooms {#2610}
-images: Doctrine\ORM\PersistentCollection {#2573
#collection: Doctrine\Common\Collections\ArrayCollection {#2572
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2574}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "JW heritage beach junior suite"
}
-mediaDirSlug: "70"
-lowerRoomPrice: null
-services: null
-slug: "heritage-beach-junior-suite"
}
6 => App\Entity\Rooms {#2565
-id: 71
-name: "Manor House Spa Suite"
-description: "Nos 7 Suites Spa Manor, avec une superficie de 146 à 214 m², sont situées au 1er étage du Manor, le bâtiment principal à proximité immédiate de toutes les commodités. Elles comprennent une chambre avec un lit King Size, un coin salon, une salle de bain et un balcon aménagé de 46 m² avec une vue sur l'océan et la piscine. Des chambres communicantes sont disponibles sur demande."
-active: true
-hotel: App\Entity\Hotels {#1164}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#10193
-elements: array:1 [
0 => App\Entity\RoomPrices {#2619
-id: 1692
-title: "Manor House Spa Suite - High Season"
-room: App\Entity\Rooms {#2565}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736510400 {#2569
date: 2025-01-10 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746878400 {#2568
date: 2025-05-10 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2567
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2566
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "1290.00"
-singleOccupancy: "1270.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 90.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2564
#collection: Doctrine\Common\Collections\ArrayCollection {#2563
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2565}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2562
#collection: Doctrine\Common\Collections\ArrayCollection {#2561
-elements: array:24 [
0 => App\Entity\RoomCapacities {#3904
-id: 2510
-room: App\Entity\Rooms {#2565}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3905
-id: 2511
-room: App\Entity\Rooms {#2565}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#3906
-id: 2512
-room: App\Entity\Rooms {#2565}
-adults: 2
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#3907
-id: 2513
-room: App\Entity\Rooms {#2565}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#3908
-id: 2514
-room: App\Entity\Rooms {#2565}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3909
-id: 2515
-room: App\Entity\Rooms {#2565}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3910
-id: 2516
-room: App\Entity\Rooms {#2565}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#3911
-id: 2517
-room: App\Entity\Rooms {#2565}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#3912
-id: 3196
-room: App\Entity\Rooms {#2565}
-adults: 2
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#3913
-id: 3197
-room: App\Entity\Rooms {#2565}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#3914
-id: 3198
-room: App\Entity\Rooms {#2565}
-adults: 2
-teens: null
-children: 1
…2
}
11 => App\Entity\RoomCapacities {#3915 …7}
12 => App\Entity\RoomCapacities {#3916 …7}
13 => App\Entity\RoomCapacities {#3917 …7}
14 => App\Entity\RoomCapacities {#3918 …7}
15 => App\Entity\RoomCapacities {#3919 …7}
16 => App\Entity\RoomCapacities {#3920 …7}
17 => App\Entity\RoomCapacities {#3921 …7}
18 => App\Entity\RoomCapacities {#3922 …7}
19 => App\Entity\RoomCapacities {#3923 …7}
20 => App\Entity\RoomCapacities {#3924 …7}
21 => App\Entity\RoomCapacities {#3925 …7}
22 => App\Entity\RoomCapacities {#3926 …7}
23 => App\Entity\RoomCapacities {#3927 …7}
]
}
#initialized: true
-snapshot: array:24 [ …24]
-owner: App\Entity\Rooms {#2565}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2571
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2570
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "6668448a564f4417592870.jpeg"
-gallery: App\Entity\Galleries {#2617
-id: 132
-hotel: null
-room: App\Entity\Rooms {#2565}
-images: Doctrine\ORM\PersistentCollection {#2576
#collection: Doctrine\Common\Collections\ArrayCollection {#2615
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2617}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "JW manor house spa suite"
}
-mediaDirSlug: "71"
-lowerRoomPrice: null
-services: null
-slug: "manor-house-spa-suite"
}
7 => App\Entity\Rooms {#2609
-id: 72
-name: "Peninsula Balcony Suite"
-description: "Les Peninsula Balcony Suites offrent une vue sur la plage. Elles disposent d’un lit double King-size, d'un dressing, d’un salon et d’un balcon privé. La salle de bain est équipée d’une douche et d’une baignoire."
-active: true
-hotel: App\Entity\Hotels {#1164}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#10214
-elements: array:1 [
0 => App\Entity\RoomPrices {#2600
-id: 1698
-title: "Peninsula Balcony Suite - High Season"
-room: App\Entity\Rooms {#2609}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736510400 {#2608 …1}
-stayEndedAt: DateTimeImmutable @1746878400 {#2613 …1}
-saleStartedAt: DateTimeImmutable @1725148800 {#2611 …1}
-saleEndedAt: DateTimeImmutable @1767181057 {#2612 …1}
-minNights: 2
-doubleOccupancy: "1390.00"
-singleOccupancy: "1370.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 90.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2602
#collection: Doctrine\Common\Collections\ArrayCollection {#2607
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2609}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2605
#collection: Doctrine\Common\Collections\ArrayCollection {#2606
-elements: array:24 [
0 => App\Entity\RoomCapacities {#3928 …7}
1 => App\Entity\RoomCapacities {#3929 …7}
2 => App\Entity\RoomCapacities {#3930 …7}
3 => App\Entity\RoomCapacities {#3931 …7}
4 => App\Entity\RoomCapacities {#3932 …7}
5 => App\Entity\RoomCapacities {#3933 …7}
6 => App\Entity\RoomCapacities {#3934 …7}
7 => App\Entity\RoomCapacities {#3935 …7}
8 => App\Entity\RoomCapacities {#3936 …7}
9 => App\Entity\RoomCapacities {#3937 …7}
10 => App\Entity\RoomCapacities {#3938 …7}
11 => App\Entity\RoomCapacities {#3939 …7}
12 => App\Entity\RoomCapacities {#3940 …7}
13 => App\Entity\RoomCapacities {#3941 …7}
14 => App\Entity\RoomCapacities {#3942 …7}
15 => App\Entity\RoomCapacities {#3943 …7}
16 => App\Entity\RoomCapacities {#3944 …7}
17 => App\Entity\RoomCapacities {#3945 …7}
18 => App\Entity\RoomCapacities {#3946 …7}
19 => App\Entity\RoomCapacities {#3947 …7}
20 => App\Entity\RoomCapacities {#3948 …7}
21 => App\Entity\RoomCapacities {#3949 …7}
22 => App\Entity\RoomCapacities {#3950 …7}
23 => App\Entity\RoomCapacities {#3951 …7}
]
}
#initialized: true
-snapshot: array:24 [ …24]
-owner: App\Entity\Rooms {#2609}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2601
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2614
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666844b3cc7b3698837244.jpeg"
-gallery: App\Entity\Galleries {#2598
-id: 98
-hotel: null
-room: App\Entity\Rooms {#2609}
-images: Doctrine\ORM\PersistentCollection {#2599
#collection: Doctrine\Common\Collections\ArrayCollection {#2596
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2598}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "JW peninsula balcony suite"
}
-mediaDirSlug: "72"
-lowerRoomPrice: null
-services: null
-slug: "peninsula-balcony-suite"
}
8 => App\Entity\Rooms {#2588
-id: 73
-name: "Peninsula Beach Access Suite"
-description: "Les Peninsula Beach Access Suites situées au rez-de-chaussée, se composent d’une chambre spacieuse avec un lit King-size, d’un grand salon séparé, et d’un coin repas. Les suites comprennent aussi une magnifique salle de bain avec une douche à effet pluie et une jolie baignoire. Situées dans un emplacement privilégié, elles disposent d’une grande terrasse privée aménagée offrant des vues rares sur le célèbre spot de surf One-Eye ainsi que sur l’océan et offrent un accès direct à la plage."
-active: true
-hotel: App\Entity\Hotels {#1164}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#10235
-elements: array:1 [
0 => App\Entity\RoomPrices {#2581
-id: 1704
-title: "Peninsula Beach Access Suite - High Season"
-room: App\Entity\Rooms {#2588}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736510400 {#2592 …1}
-stayEndedAt: DateTimeImmutable @1746878400 {#2593 …1}
-saleStartedAt: DateTimeImmutable @1725148800 {#2590 …1}
-saleEndedAt: DateTimeImmutable @1767181057 {#2583 …1}
-minNights: 2
-doubleOccupancy: "1680.00"
-singleOccupancy: "1660.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 90.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2586
#collection: Doctrine\Common\Collections\ArrayCollection {#2587
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2588}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2584
#collection: Doctrine\Common\Collections\ArrayCollection {#2577
-elements: array:24 [
0 => App\Entity\RoomCapacities {#3952 …7}
1 => App\Entity\RoomCapacities {#3953 …7}
2 => App\Entity\RoomCapacities {#3954 …7}
3 => App\Entity\RoomCapacities {#3955 …7}
4 => App\Entity\RoomCapacities {#3956 …7}
5 => App\Entity\RoomCapacities {#3957 …7}
6 => App\Entity\RoomCapacities {#3958 …7}
7 => App\Entity\RoomCapacities {#3959 …7}
8 => App\Entity\RoomCapacities {#3960 …7}
9 => App\Entity\RoomCapacities {#3961 …7}
10 => App\Entity\RoomCapacities {#3962 …7}
11 => App\Entity\RoomCapacities {#3963 …7}
12 => App\Entity\RoomCapacities {#3964 …7}
13 => App\Entity\RoomCapacities {#3965 …7}
14 => App\Entity\RoomCapacities {#3966 …7}
15 => App\Entity\RoomCapacities {#3967 …7}
16 => App\Entity\RoomCapacities {#3968 …7}
17 => App\Entity\RoomCapacities {#3969 …7}
18 => App\Entity\RoomCapacities {#3970 …7}
19 => App\Entity\RoomCapacities {#3971 …7}
20 => App\Entity\RoomCapacities {#3972 …7}
21 => App\Entity\RoomCapacities {#3973 …7}
22 => App\Entity\RoomCapacities {#3974 …7}
23 => App\Entity\RoomCapacities {#3975 …7}
]
}
#initialized: true
-snapshot: array:24 [ …24]
-owner: App\Entity\Rooms {#2588}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2589
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2594
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666843c460477096568287.jpeg"
-gallery: App\Entity\Galleries {#2578
-id: 99
-hotel: null
-room: App\Entity\Rooms {#2588}
-images: Doctrine\ORM\PersistentCollection {#2623
#collection: Doctrine\Common\Collections\ArrayCollection {#2624
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2578}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "JW peninsula beach access suite"
}
-mediaDirSlug: "73"
-lowerRoomPrice: null
-services: null
-slug: "peninsula-beach-access-suite"
}
9 => App\Entity\Rooms {#2631
-id: 74
-name: "Le Morne Balcony Suite"
-description: "Les suites Le Morne Balcony, dotées des plus grandes chambres de l’hôtel, se constituent d’un lit King-size, d’un salon séparé, et d’une salle de bain équipée d’une douche et d’une baignoire. Elles disposent d’un balcon privé offrant une superbe vue sur l’océan"
-active: true
-hotel: App\Entity\Hotels {#1164}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#10256
-elements: array:1 [
0 => App\Entity\RoomPrices {#2638
-id: 1710
-title: "Le Morne Balcony Suite - High Season"
-room: App\Entity\Rooms {#2631}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736510400 {#2627 …1}
-stayEndedAt: DateTimeImmutable @1746878400 {#2628 …1}
-saleStartedAt: DateTimeImmutable @1725148800 {#2629 …1}
-saleEndedAt: DateTimeImmutable @1767181057 {#2630 …1}
-minNights: 2
-doubleOccupancy: "1870.00"
-singleOccupancy: "1850.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 90.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2632
#collection: Doctrine\Common\Collections\ArrayCollection {#2633
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2631}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2634
#collection: Doctrine\Common\Collections\ArrayCollection {#2635
-elements: array:30 [
0 => App\Entity\RoomCapacities {#3976 …7}
1 => App\Entity\RoomCapacities {#3977 …7}
2 => App\Entity\RoomCapacities {#3978 …7}
3 => App\Entity\RoomCapacities {#3979 …7}
4 => App\Entity\RoomCapacities {#3980 …7}
5 => App\Entity\RoomCapacities {#3981 …7}
6 => App\Entity\RoomCapacities {#3982 …7}
7 => App\Entity\RoomCapacities {#3983 …7}
8 => App\Entity\RoomCapacities {#3984 …7}
9 => App\Entity\RoomCapacities {#3985 …7}
10 => App\Entity\RoomCapacities {#3986 …7}
11 => App\Entity\RoomCapacities {#3987 …7}
12 => App\Entity\RoomCapacities {#3988 …7}
13 => App\Entity\RoomCapacities {#3989 …7}
14 => App\Entity\RoomCapacities {#3990 …7}
15 => App\Entity\RoomCapacities {#3991 …7}
16 => App\Entity\RoomCapacities {#3992 …7}
17 => App\Entity\RoomCapacities {#3993 …7}
18 => App\Entity\RoomCapacities {#3994 …7}
19 => App\Entity\RoomCapacities {#3995 …7}
20 => App\Entity\RoomCapacities {#3996 …7}
21 => App\Entity\RoomCapacities {#3997 …7}
22 => App\Entity\RoomCapacities {#3998 …7}
23 => App\Entity\RoomCapacities {#3999 …7}
24 => App\Entity\RoomCapacities {#4000 …7}
25 => App\Entity\RoomCapacities {#4001 …7}
26 => App\Entity\RoomCapacities {#4002 …7}
27 => App\Entity\RoomCapacities {#4003 …7}
28 => App\Entity\RoomCapacities {#4004 …7}
29 => App\Entity\RoomCapacities {#4005 …7}
]
}
#initialized: true
-snapshot: array:30 [ …30]
-owner: App\Entity\Rooms {#2631}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2625
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2626
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "6667faa72f384892923080.jpeg"
-gallery: App\Entity\Galleries {#2639
-id: 100
-hotel: null
-room: App\Entity\Rooms {#2631}
-images: Doctrine\ORM\PersistentCollection {#2640
#collection: Doctrine\Common\Collections\ArrayCollection {#2641
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2639}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "JW morne balcony suite"
}
-mediaDirSlug: "74"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "le-morne-balcony-suite"
}
10 => App\Entity\Rooms {#2648
-id: 75
-name: "Le Morne Beach Access Suite"
-description: "Les suites Le Morne Beach Access, dotées des plus grandes chambres de l’hôtel, se constituent d’un lit King-size, d’un salon séparé, et d’une salle de bain équipée d’une douche et d’une baignoire. Elles sont également dotées d’une spacieuse terrasse privée et offrent un accès direct à la plage."
-active: true
-hotel: App\Entity\Hotels {#1164}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#10277
-elements: array:1 [
0 => App\Entity\RoomPrices {#2655
-id: 1716
-title: "Le Morne Beach Access Suite - High Season"
-room: App\Entity\Rooms {#2648}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736510400 {#2644 …1}
-stayEndedAt: DateTimeImmutable @1746878400 {#2645 …1}
-saleStartedAt: DateTimeImmutable @1725148800 {#2646 …1}
-saleEndedAt: DateTimeImmutable @1767181057 {#2647 …1}
-minNights: 2
-doubleOccupancy: "2110.00"
-singleOccupancy: "2090.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 90.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2649
#collection: Doctrine\Common\Collections\ArrayCollection {#2650
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2648}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2651
#collection: Doctrine\Common\Collections\ArrayCollection {#2652
-elements: array:31 [
0 => App\Entity\RoomCapacities {#4006 …7}
1 => App\Entity\RoomCapacities {#4007 …7}
2 => App\Entity\RoomCapacities {#4008 …7}
3 => App\Entity\RoomCapacities {#4009 …7}
4 => App\Entity\RoomCapacities {#4010 …7}
5 => App\Entity\RoomCapacities {#4011 …7}
6 => App\Entity\RoomCapacities {#4012 …7}
7 => App\Entity\RoomCapacities {#4013 …7}
8 => App\Entity\RoomCapacities {#4014 …7}
9 => App\Entity\RoomCapacities {#4015 …7}
10 => App\Entity\RoomCapacities {#4016 …7}
11 => App\Entity\RoomCapacities {#4017 …7}
12 => App\Entity\RoomCapacities {#4018 …7}
13 => App\Entity\RoomCapacities {#4019 …7}
14 => App\Entity\RoomCapacities {#4020 …7}
15 => App\Entity\RoomCapacities {#4021 …7}
16 => App\Entity\RoomCapacities {#4022 …7}
17 => App\Entity\RoomCapacities {#4023 …7}
18 => App\Entity\RoomCapacities {#4024 …7}
19 => App\Entity\RoomCapacities {#4025 …7}
20 => App\Entity\RoomCapacities {#4026 …7}
21 => App\Entity\RoomCapacities {#4027 …7}
22 => App\Entity\RoomCapacities {#4028 …7}
23 => App\Entity\RoomCapacities {#4029 …7}
24 => App\Entity\RoomCapacities {#4030 …7}
25 => App\Entity\RoomCapacities {#4031 …7}
26 => App\Entity\RoomCapacities {#4032 …7}
27 => App\Entity\RoomCapacities {#4033 …7}
28 => App\Entity\RoomCapacities {#4034 …7}
29 => App\Entity\RoomCapacities {#4035 …7}
30 => App\Entity\RoomCapacities {#4036 …7}
]
}
#initialized: true
-snapshot: array:31 [ …31]
-owner: App\Entity\Rooms {#2648}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2642
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2643
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "6667fac6959f0352633172.jpeg"
-gallery: App\Entity\Galleries {#2656
-id: 101
-hotel: null
-room: App\Entity\Rooms {#2648}
-images: Doctrine\ORM\PersistentCollection {#2657
#collection: Doctrine\Common\Collections\ArrayCollection {#2658
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2656}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "JW morne beach access suite"
}
-mediaDirSlug: "75"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "le-morne-beach-access-suite"
}
]
}
#initialized: true
-snapshot: array:11 [ …11]
-owner: App\Entity\Hotels {#1164}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#880 …}
-backRefFieldName: "hotel"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-address: "Route Côtiere Péninsule Le Morne, Le Morne, Île Maurice"
-checkInTime: "14:00"
-checkOutTime: "11:00"
-babyAgeMax: "13"
-childAgeMax: "13"
-teenAgeMax: "16"
-extraCharges: Doctrine\ORM\PersistentCollection {#1167
#collection: Doctrine\Common\Collections\ArrayCollection {#1168
-elements: array:5 [
0 => App\Entity\ExtraCharges {#10331
-id: 43
-title: "Demi-pension par nuit et par personne"
-description: null
-adultExtra: 90.0
-babyExtra: null
-childExtra: null
-teenExtra: 90.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1164}
}
1 => App\Entity\ExtraCharges {#10328
-id: 45
-title: "Pension complète par nuit et par personne"
-description: null
-adultExtra: 135.0
-babyExtra: null
-childExtra: null
-teenExtra: 135.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1164}
}
2 => App\Entity\ExtraCharges {#10338
-id: 47
-title: "Suppléments repas de Noêl"
-description: null
-adultExtra: 240.0
-babyExtra: null
-childExtra: 120.0
-teenExtra: 240.0
-stayStartedAt: DateTimeImmutable @1734998400 {#10330
date: 2024-12-24 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1735084800 {#10336
date: 2024-12-25 00:00:00.0 UTC (+00:00)
}
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1164}
}
3 => App\Entity\ExtraCharges {#10341
-id: 49
-title: "Suppléments repas Saint Sylvestre"
-description: null
-adultExtra: 480.0
-babyExtra: null
-childExtra: 240.0
-teenExtra: 480.0
-stayStartedAt: DateTimeImmutable @1735603200 {#10339
date: 2024-12-31 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1735689600 {#10340
date: 2025-01-01 00:00:00.0 UTC (+00:00)
}
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1164}
}
4 => App\Entity\ExtraCharges {#10342
-id: 188
-title: "BASE - PETIT DEJEUNER"
-description: null
-adultExtra: 0.0
-babyExtra: null
-childExtra: 0.0
-teenExtra: 0.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: true
-minNights: null
-hotel: App\Entity\Hotels {#1164}
}
]
}
#initialized: true
-snapshot: array:5 [ …5]
-owner: App\Entity\Hotels {#1164}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#876 …}
-backRefFieldName: "hotel"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-imageFile: null
-featuredImage: "66601974c8fbc735558975.webp"
-gallery: App\Entity\Galleries {#1171
-id: 63
-hotel: App\Entity\Hotels {#1164}
-room: null
-images: Doctrine\ORM\PersistentCollection {#1172
#collection: Doctrine\Common\Collections\ArrayCollection {#1173
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1171}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Hotel JW Marriott"
}
-mediaDirSlug: null
-offers: Doctrine\Common\Collections\ArrayCollection {#10590}
-highlighted: null
-services: null
-hlStartAt: null
-hlEndAt: null
-slug: "jw-marriott-resort"
}
-description: null
-stayStartAt: DateTimeImmutable @1717200000 {#10445
date: 2024-06-01 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1761868800 {#10446
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1717200000 {#10447
date: 2024-06-01 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1761868800 {#10448
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-reference: null
-minNights: 14
-maxNights: null
-earlyBookingDays: null
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#10450
#collection: Doctrine\Common\Collections\ArrayCollection {#10451
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#10449}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1075 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 10
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#10452
#collection: Doctrine\Common\Collections\ArrayCollection {#10453
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#10449}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1081 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-offers: Doctrine\ORM\PersistentCollection {#10454
#collection: Doctrine\Common\Collections\ArrayCollection {#10455
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#10449}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1085 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#10456
#collection: Doctrine\Common\Collections\ArrayCollection {#10457
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#10449}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1087 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#10458
#collection: Doctrine\Common\Collections\ArrayCollection {#10459
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#10449}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1093 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-extrasDiscount: null
-priority: 2
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
1 => App\Entity\Offers {#10434
-id: 108
-title: "EARLY BOOKING JW"
-type: "EarlyBooking"
-hotel: App\Entity\Hotels {#1164}
-description: null
-stayStartAt: DateTimeImmutable @1727740800 {#10427
date: 2024-10-01 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1761868800 {#10379
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1717200000 {#10426
date: 2024-06-01 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1761868800 {#10432
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-reference: null
-minNights: 3
-maxNights: null
-earlyBookingDays: 30
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#10435
#collection: Doctrine\Common\Collections\ArrayCollection {#10436
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#10434}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1075 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 20
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#10437
#collection: Doctrine\Common\Collections\ArrayCollection {#10438
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#10434}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1081 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-offers: Doctrine\ORM\PersistentCollection {#10439
#collection: Doctrine\Common\Collections\ArrayCollection {#10440
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#10434}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1085 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#10441
#collection: Doctrine\Common\Collections\ArrayCollection {#10442
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#10434}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1087 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#10443
#collection: Doctrine\Common\Collections\ArrayCollection {#10444
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#10434}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1093 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-extrasDiscount: null
-priority: 2
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
2 => App\Entity\Offers {#10464
-id: 192
-title: "WINTER CAMPAIGN 2025"
-type: "Special"
-hotel: App\Entity\Hotels {#1164}
-description: null
-stayStartAt: DateTimeImmutable @1739232000 {#10460
date: 2025-02-11 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1743120000 {#10461
date: 2025-03-28 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1733011200 {#10462
date: 2024-12-01 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1743379200 {#10463
date: 2025-03-31 00:00:00.0 UTC (+00:00)
}
-reference: "WINTER CAMPAIGN 2025"
-minNights: null
-maxNights: null
-earlyBookingDays: null
-applyToAllRooms: false
-selectedRooms: Doctrine\ORM\PersistentCollection {#10465
#collection: Doctrine\Common\Collections\ArrayCollection {#10466
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#10464}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1075 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 45
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#10467
#collection: Doctrine\Common\Collections\ArrayCollection {#10468
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#10464}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1081 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-offers: Doctrine\ORM\PersistentCollection {#10469
#collection: Doctrine\Common\Collections\ArrayCollection {#10470
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#10464}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1085 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#10471
#collection: Doctrine\Common\Collections\ArrayCollection {#10472
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#10464}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1087 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#10473
#collection: Doctrine\Common\Collections\ArrayCollection {#10474
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#10464}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1093 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-extrasDiscount: null
-priority: 1
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
]
}
1 in
PromotionDTO.php
line 556:
if ($offer_min_nights) {
if($stay_nights < $offer_min_nights){
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle(), 'Min nights failure.');
}
return $this;
}
"109 - LONG STAY JW"
2 in
PromotionDTO.php
line 556:
if ($offer_min_nights) {
if($stay_nights < $offer_min_nights){
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle(), 'Min nights failure.');
}
return $this;
}
"Min nights failure."
1 in
PromotionDTO.php
line 546:
// if booking not respect the interval skip this offer - format('%a') return a string of the diff days, need to convert to integer value
if (intval($booking_interval->format('%a')) < $offer_earlybookingDays) {
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle() . '(nb jours: ' . $offer_earlybookingDays . ')', 'Early booking date interval failure. (début séjour dans '.$booking_interval->format('%a').' jours.)');
}
return $this;
}
"108 - EARLY BOOKING JW(nb jours: 30)"
2 in
PromotionDTO.php
line 546:
// if booking not respect the interval skip this offer - format('%a') return a string of the diff days, need to convert to integer value
if (intval($booking_interval->format('%a')) < $offer_earlybookingDays) {
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle() . '(nb jours: ' . $offer_earlybookingDays . ')', 'Early booking date interval failure. (début séjour dans '.$booking_interval->format('%a').' jours.)');
}
return $this;
}
"Early booking date interval failure. (début séjour dans 27 jours.)"
1 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
"Step 1. Offres valides : "
2 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
array:1 [
0 => App\DTO\PromotionDTO {#10657
-debug: true
+id: 192
+title: "WINTER CAMPAIGN 2025"
+description: null
+type: "Special"
+reference: "WINTER CAMPAIGN 2025"
+from: DateTimeImmutable @1739232000 {#10460
date: 2025-02-11 00:00:00.0 UTC (+00:00)
}
+to: DateTimeImmutable @1743120000 {#10461
date: 2025-03-28 00:00:00.0 UTC (+00:00)
}
+earlyBookingDays: null
+minNights: null
+maxNights: null
+discountRate: 45
+discountFamilyRates: []
+combinableRate: null
+priority: 1
+extrasDiscountRate: null
+isAllRooms: false
+isCombinable: false
+selectedRoomsIDs: array:7 [
0 => 65
1 => 66
2 => 67
3 => 68
4 => 69
5 => 70
6 => 71
]
+selectedExtrasIDs: []
+selectedOffersIDs: []
+selectedExtrasDiscountIDs: []
}
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : InterContinental Resort - Chambre : #76 - Deluxe Face mer has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#11266
+rpId: 1495
+adultsPrice: 370
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 370
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 370
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 370
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 370
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : InterContinental Resort - Chambre : #77 - Prestige Vue mer has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#11287
+rpId: 1501
+adultsPrice: 395
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 395
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 395
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 395
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 395
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : InterContinental Resort - Chambre : #78 - Terrace Suite has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#11308
+rpId: 1507
+adultsPrice: 420
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : InterContinental Resort - Chambre : #79 - Family Room has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#11329
+rpId: 1513
+adultsPrice: 520
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : InterContinental Resort - Chambre : #80 - Duplex Suite has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#11350
+rpId: 1519
+adultsPrice: 620
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 620
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 620
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 620
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 620
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
"Update Stay Rooms - Chambers Prices"
2 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
array:1 [
0 => array:5 [
0 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
"room_id" => 76
"room_picture" => "/uploads/rooms/76/666aebaf5e554743585272.jpg"
"room_name" => "Deluxe Face mer"
"room_slug" => "deluxe-face-mer"
"room_description" => """
Les chambres du premier, deuxième et troisième étage de l’hôtel font toutes 56 mètres carré et possèdent une vue tropicale et une chaleureuse ambiance. Surplombant les jardins et l’océan Indien le décor intérieur comprend des éléments d’artisanat Mauriciens, de textiles tissés à la main, des meubles fait mains et des objets d’art qui offrent un charme local unique. Les chambres du rez de chaussée offrent un accès direct aux jardins et à la plage.\r\n
\r\n
Les salles de bain en marbre créent une atmosphère de spa avec une profonde baignoire et une douche. Sur les balcons, des meubles confortables permettent aux clients de jouir d’une vue sur le jardin et le coucher de soleil.\r\n
\r\n
De très grand lit ou de lits jumeaux sont disponibles, avec une capacité maximale de 2 adultes et 1 enfant de moins de 12 ans.
"""
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1495
"adult_amount" => 1480
"children_amount" => 0
"basis_amount" => 1480
"mandatoryExtraId" => null
"default_extra_label" => "Demi Pension"
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 370
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 370
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 370
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 370
"kids_price" => 0
]
]
]
]
1 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 77
"room_picture" => "/uploads/rooms/77/666aebea88d98706732414.jpg"
"room_name" => "Prestige Vue mer"
"room_slug" => "prestige-vue-mer"
"room_description" => """
Les chambres d’une superficie de 56 mètres carré possèdent une vue mer sur l’Océan Indien. Surplombant les jardins et l’océan Indien le décor intérieur comprend des éléments d’artisanat Mauriciens, de textiles tissés à la main, des meubles fait mains et des objets d’art qui offrent un charme local unique. Les chambres du rez de chaussée offrent un accès direct aux jardins et à la plage.\r\n
\r\n
Les salles de bain en marbre créent une atmosphère de spa avec une profonde baignoire et une douche à l’italienne séparée. Le mobilier extérieur des terrasses permet aux clients de jouir d’une vue sur l’Ócéan Indien et des magnifiques couchers de soleil.\r\n
\r\n
De très grand lit ou de lits jumeaux sont disponibles, avec une capacité maximale de 2 adultes et 1 enfant de moins de 12 ans.
"""
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1501
"adult_amount" => 1580
"children_amount" => 0
"basis_amount" => 1580
"mandatoryExtraId" => null
"default_extra_label" => "Demi Pension"
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 395
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 395
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 395
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 395
"kids_price" => 0
]
]
]
]
2 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 78
"room_picture" => "/uploads/rooms/78/666aec0f4cdb1843384550.jpg"
"room_name" => "Terrace Suite"
"room_slug" => "terrace-suite"
"room_description" => "Un havre de paix pour les couples en quête de romantisme. La chambre de 56 mètre carrés a également une terrasse de 33 mètre carrés équipée d' un bain a remous et faisant face à l’océan. Meublées dans un style contemporain chic et luxueux, les chambres sont pourvues d’une spacieuse salle de bain avec double vasque, baignoire profonde en pierre et d’une douche. Elles sont situées au deuxième étage de l’hôtel, chacune offrant des vues différentes."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1507
"adult_amount" => 1680
"children_amount" => 0
"basis_amount" => 1680
"mandatoryExtraId" => null
"default_extra_label" => "Demi Pension"
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
]
]
]
3 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 79
"room_picture" => "/uploads/rooms/79/666aecbbcd812481373213.jpg"
"room_name" => "Family Room"
"room_slug" => "family-room"
"room_description" => """
Endroit plus spacieux de 72 mètres carrés qui se compose d’une chambre principale avec un grand lit et d’une deuxième chambre à coucher avec deux lits simples; offrant intimité et paix à tous les membres de la famille. La salle de bain de la chambre famille comporte un wc, une double vasque, une baignoire en pierre et une douche pour une détente ultime.\r\n
\r\n
Sur un balcon meublé et privé, vous pourrez admirer la vue sur Balaclava et peut être profiter du coucher de soleil. Les chambres disposent d'une porte communicante, permettant aux clients de profiter d’une ambiance familiale ou même d’un peu d’intimité.\r\n
\r\n
Capacité Maximale : 4 clients (2 adultes & 2 enfants ou 3 adultes & 1 enfant)
"""
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1513
"adult_amount" => 2080
"children_amount" => 0
"basis_amount" => 2080
"mandatoryExtraId" => null
"default_extra_label" => "Demi Pension"
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
]
]
]
4 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 80
"room_picture" => "/uploads/rooms/80/6718967b7591a281527865.jpeg"
"room_name" => "Duplex Suite"
"room_slug" => "duplex-suite-2"
"room_description" => "Chaque suite en duplex offre le summum en matière de luxe. Offrant 300 mètres carrés d’espace, ces suites sont parfaites pour les clients souhaitant vivre une exaltante expérience en se faisant chouchouter. Elles sont situées sur les étages supérieures de l’hôtel, avec deux terrasses chacune –une avec un jacuzzi et l’autre avec des chaises longues. L’étage au -dessous comporte un séjour et salle à manger, parfaite pour les réceptions, tandis que l’autre étage comprend une chambre principale avec une élégante salle de bains. Vous pourrez admirer la vue sur l’Ocean Indien."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1519
"adult_amount" => 2480
"children_amount" => 0
"basis_amount" => 2480
"mandatoryExtraId" => null
"default_extra_label" => "Demi Pension"
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 620
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 620
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 620
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 620
"kids_price" => 0
]
]
]
]
]
]
1 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
"Update Stay Rooms results"
2 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
array:5 [
0 => App\DTO\RoomStayDTO {#10343
-marginRate: 20
-id: 76
-name: "Deluxe Face mer"
-slug: "deluxe-face-mer"
-picture: "/uploads/rooms/76/666aebaf5e554743585272.jpg"
-description: """
Les chambres du premier, deuxième et troisième étage de l’hôtel font toutes 56 mètres carré et possèdent une vue tropicale et une chaleureuse ambiance. Surplombant les jardins et l’océan Indien le décor intérieur comprend des éléments d’artisanat Mauriciens, de textiles tissés à la main, des meubles fait mains et des objets d’art qui offrent un charme local unique. Les chambres du rez de chaussée offrent un accès direct aux jardins et à la plage.\r\n
\r\n
Les salles de bain en marbre créent une atmosphère de spa avec une profonde baignoire et une douche. Sur les balcons, des meubles confortables permettent aux clients de jouir d’une vue sur le jardin et le coucher de soleil.\r\n
\r\n
De très grand lit ou de lits jumeaux sont disponibles, avec une capacité maximale de 2 adultes et 1 enfant de moins de 12 ans.
"""
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: "Demi Pension"
-mandatoryExtraId: 171
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 370
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 370
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 370
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 370
"kids_price" => 0
]
]
"amount" => 1480
]
]
-totalRoomAmount: 1480.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#11369
-marginRate: 20
+extraId: 171
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1480.0
+totalStayAmountWoDiscount: 1480.0
+totalStayAmount: 1480.0
+finalAmountWoDiscount: 1776.0
+finalAmount: 1776.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#11372
-marginRate: 20
+extraId: 1
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 80
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 320
+kidsExtrasAmount: 0
+stayExtrasAmount: 320
+stayRoomAmount: 1480.0
+totalStayAmountWoDiscount: 1800.0
+totalStayAmount: 1800.0
+finalAmountWoDiscount: 2160.0
+finalAmount: 2160.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#11379
-marginRate: 20
+extraId: 50
+name: "Suppléments repas Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 180
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 720
+kidsExtrasAmount: 0
+stayExtrasAmount: 720
+stayRoomAmount: 1480.0
+totalStayAmountWoDiscount: 2200.0
+totalStayAmount: 2200.0
+finalAmountWoDiscount: 2640.0
+finalAmount: 2640.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
1 => App\DTO\RoomStayDTO {#11325
-marginRate: 20
-id: 77
-name: "Prestige Vue mer"
-slug: "prestige-vue-mer"
-picture: "/uploads/rooms/77/666aebea88d98706732414.jpg"
-description: """
Les chambres d’une superficie de 56 mètres carré possèdent une vue mer sur l’Océan Indien. Surplombant les jardins et l’océan Indien le décor intérieur comprend des éléments d’artisanat Mauriciens, de textiles tissés à la main, des meubles fait mains et des objets d’art qui offrent un charme local unique. Les chambres du rez de chaussée offrent un accès direct aux jardins et à la plage.\r\n
\r\n
Les salles de bain en marbre créent une atmosphère de spa avec une profonde baignoire et une douche à l’italienne séparée. Le mobilier extérieur des terrasses permet aux clients de jouir d’une vue sur l’Ócéan Indien et des magnifiques couchers de soleil.\r\n
\r\n
De très grand lit ou de lits jumeaux sont disponibles, avec une capacité maximale de 2 adultes et 1 enfant de moins de 12 ans.
"""
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: "Demi Pension"
-mandatoryExtraId: 171
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 395
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 395
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 395
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 395
"kids_price" => 0
]
]
"amount" => 1580
]
]
-totalRoomAmount: 1580.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#11380
-marginRate: 20
+extraId: 171
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1580.0
+totalStayAmountWoDiscount: 1580.0
+totalStayAmount: 1580.0
+finalAmountWoDiscount: 1896.0
+finalAmount: 1896.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#11381
-marginRate: 20
+extraId: 1
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 80
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 320
+kidsExtrasAmount: 0
+stayExtrasAmount: 320
+stayRoomAmount: 1580.0
+totalStayAmountWoDiscount: 1900.0
+totalStayAmount: 1900.0
+finalAmountWoDiscount: 2280.0
+finalAmount: 2280.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#11382
-marginRate: 20
+extraId: 50
+name: "Suppléments repas Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 180
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 720
+kidsExtrasAmount: 0
+stayExtrasAmount: 720
+stayRoomAmount: 1580.0
+totalStayAmountWoDiscount: 2300.0
+totalStayAmount: 2300.0
+finalAmountWoDiscount: 2760.0
+finalAmount: 2760.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
2 => App\DTO\RoomStayDTO {#11346
-marginRate: 20
-id: 78
-name: "Terrace Suite"
-slug: "terrace-suite"
-picture: "/uploads/rooms/78/666aec0f4cdb1843384550.jpg"
-description: "Un havre de paix pour les couples en quête de romantisme. La chambre de 56 mètre carrés a également une terrasse de 33 mètre carrés équipée d' un bain a remous et faisant face à l’océan. Meublées dans un style contemporain chic et luxueux, les chambres sont pourvues d’une spacieuse salle de bain avec double vasque, baignoire profonde en pierre et d’une douche. Elles sont situées au deuxième étage de l’hôtel, chacune offrant des vues différentes."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: "Demi Pension"
-mandatoryExtraId: 171
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
]
"amount" => 1680
]
]
-totalRoomAmount: 1680.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#11383
-marginRate: 20
+extraId: 171
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1680.0
+totalStayAmountWoDiscount: 1680.0
+totalStayAmount: 1680.0
+finalAmountWoDiscount: 2016.0
+finalAmount: 2016.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#11384
-marginRate: 20
+extraId: 1
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 80
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 320
+kidsExtrasAmount: 0
+stayExtrasAmount: 320
+stayRoomAmount: 1680.0
+totalStayAmountWoDiscount: 2000.0
+totalStayAmount: 2000.0
+finalAmountWoDiscount: 2400.0
+finalAmount: 2400.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#11385
-marginRate: 20
+extraId: 50
+name: "Suppléments repas Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 180
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 720
+kidsExtrasAmount: 0
+stayExtrasAmount: 720
+stayRoomAmount: 1680.0
+totalStayAmountWoDiscount: 2400.0
+totalStayAmount: 2400.0
+finalAmountWoDiscount: 2880.0
+finalAmount: 2880.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
3 => App\DTO\RoomStayDTO {#11345
-marginRate: 20
-id: 79
-name: "Family Room"
-slug: "family-room"
-picture: "/uploads/rooms/79/666aecbbcd812481373213.jpg"
-description: """
Endroit plus spacieux de 72 mètres carrés qui se compose d’une chambre principale avec un grand lit et d’une deuxième chambre à coucher avec deux lits simples; offrant intimité et paix à tous les membres de la famille. La salle de bain de la chambre famille comporte un wc, une double vasque, une baignoire en pierre et une douche pour une détente ultime.\r\n
\r\n
Sur un balcon meublé et privé, vous pourrez admirer la vue sur Balaclava et peut être profiter du coucher de soleil. Les chambres disposent d'une porte communicante, permettant aux clients de profiter d’une ambiance familiale ou même d’un peu d’intimité.\r\n
\r\n
Capacité Maximale : 4 clients (2 adultes & 2 enfants ou 3 adultes & 1 enfant)
"""
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: "Demi Pension"
-mandatoryExtraId: 171
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 520
"kids_price" => 0
]
]
"amount" => 2080
]
]
-totalRoomAmount: 2080.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#11386
-marginRate: 20
+extraId: 171
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2080.0
+totalStayAmountWoDiscount: 2080.0
+totalStayAmount: 2080.0
+finalAmountWoDiscount: 2496.0
+finalAmount: 2496.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#11387
-marginRate: 20
+extraId: 1
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 80
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 320
+kidsExtrasAmount: 0
+stayExtrasAmount: 320
+stayRoomAmount: 2080.0
+totalStayAmountWoDiscount: 2400.0
+totalStayAmount: 2400.0
+finalAmountWoDiscount: 2880.0
+finalAmount: 2880.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#11388
-marginRate: 20
+extraId: 50
+name: "Suppléments repas Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 180
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 720
+kidsExtrasAmount: 0
+stayExtrasAmount: 720
+stayRoomAmount: 2080.0
+totalStayAmountWoDiscount: 2800.0
+totalStayAmount: 2800.0
+finalAmountWoDiscount: 3360.0
+finalAmount: 3360.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
4 => App\DTO\RoomStayDTO {#11323
-marginRate: 20
-id: 80
-name: "Duplex Suite"
-slug: "duplex-suite-2"
-picture: "/uploads/rooms/80/6718967b7591a281527865.jpeg"
-description: "Chaque suite en duplex offre le summum en matière de luxe. Offrant 300 mètres carrés d’espace, ces suites sont parfaites pour les clients souhaitant vivre une exaltante expérience en se faisant chouchouter. Elles sont situées sur les étages supérieures de l’hôtel, avec deux terrasses chacune –une avec un jacuzzi et l’autre avec des chaises longues. L’étage au -dessous comporte un séjour et salle à manger, parfaite pour les réceptions, tandis que l’autre étage comprend une chambre principale avec une élégante salle de bains. Vous pourrez admirer la vue sur l’Ocean Indien."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: "Demi Pension"
-mandatoryExtraId: 171
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 620
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 620
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 620
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 620
"kids_price" => 0
]
]
"amount" => 2480
]
]
-totalRoomAmount: 2480.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#11389
-marginRate: 20
+extraId: 171
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2480.0
+totalStayAmountWoDiscount: 2480.0
+totalStayAmount: 2480.0
+finalAmountWoDiscount: 2976.0
+finalAmount: 2976.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#11390
-marginRate: 20
+extraId: 1
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 80
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 320
+kidsExtrasAmount: 0
+stayExtrasAmount: 320
+stayRoomAmount: 2480.0
+totalStayAmountWoDiscount: 2800.0
+totalStayAmount: 2800.0
+finalAmountWoDiscount: 3360.0
+finalAmount: 3360.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#11391
-marginRate: 20
+extraId: 50
+name: "Suppléments repas Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 180
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 720
+kidsExtrasAmount: 0
+stayExtrasAmount: 720
+stayRoomAmount: 2480.0
+totalStayAmountWoDiscount: 3200.0
+totalStayAmount: 3200.0
+finalAmountWoDiscount: 3840.0
+finalAmount: 3840.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
]
1 in
RoomStayCalculation.php
line 274:
{
$offers_eligibled = [];
if ($this->debug) {
dump('All available offers of the hotel', $offers);
}
foreach ($offers as $key => $offer) {
"All available offers of the hotel"
2 in
RoomStayCalculation.php
line 274:
{
$offers_eligibled = [];
if ($this->debug) {
dump('All available offers of the hotel', $offers);
}
foreach ($offers as $key => $offer) {
Doctrine\Common\Collections\ArrayCollection {#11493
-elements: array:2 [
0 => App\Entity\Offers {#11427
-id: 4
-title: "EARLY BOOKING INTERCONTINENTAL"
-type: "EarlyBooking"
-hotel: App\Entity\Hotels {#1178
-id: 13
-name: "InterContinental Resort"
-description: """
Destination exceptionnelle où l'hospitalité mauricienne rencontre le luxe, l'InterContinental.\r\n
\r\n
Mauritius Resort est une propriété en bord de mer située sur le rivage de la plage de Balaclava. Le Resort dispose de 210 chambres et suites. \r\n
\r\n
Le Resort présente l'hôte idéal comme destination de mariage ainsi que les groupes d'affaires à la recherche de réunions uniques.
"""
-website: "https://www.ihg.com/intercontinental/hotels/fr/fr/balaclava/mruma/hoteldetail"
-stars: 5
-youtubeVideoId: "6lQKIgJEWWQ"
-phone: "+33 800907458"
-email: "info.icmauritius@ihg.com"
-active: true
-gmapUrl: "<iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3746.967717962049!2d57.50640931217262!3d-20.093636281254103!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x217c530379e2b919%3A0x2b608fa52d679566!2sInterContinental%20Resort%20Mauritius%2C%20an%20IHG%20Hotel!5e0!3m2!1sfr!2sfr!4v1718969200033!5m2!1sfr!2sfr" width="100%" height="600" style="border:0;" allowfullscreen="" loading="lazy" referrerpolicy="no-referrer-when-downgrade"></iframe>"
-zone: "Nord-Ouest"
-createdAt: DateTimeImmutable @1714145854 {#1174
date: 2024-04-26 15:37:34.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1734514469 {#1175
date: 2024-12-18 09:34:29.0 UTC (+00:00)
}
-rooms: Doctrine\ORM\PersistentCollection {#1179
#collection: Doctrine\Common\Collections\ArrayCollection {#1180
-elements: array:5 [
0 => App\Entity\Rooms {#2743
-id: 76
-name: "Deluxe Face mer"
-description: """
Les chambres du premier, deuxième et troisième étage de l’hôtel font toutes 56 mètres carré et possèdent une vue tropicale et une chaleureuse ambiance. Surplombant les jardins et l’océan Indien le décor intérieur comprend des éléments d’artisanat Mauriciens, de textiles tissés à la main, des meubles fait mains et des objets d’art qui offrent un charme local unique. Les chambres du rez de chaussée offrent un accès direct aux jardins et à la plage.\r\n
\r\n
Les salles de bain en marbre créent une atmosphère de spa avec une profonde baignoire et une douche. Sur les balcons, des meubles confortables permettent aux clients de jouir d’une vue sur le jardin et le coucher de soleil.\r\n
\r\n
De très grand lit ou de lits jumeaux sont disponibles, avec une capacité maximale de 2 adultes et 1 enfant de moins de 12 ans.
"""
-active: true
-hotel: App\Entity\Hotels {#1178}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#11258
-elements: array:1 [
0 => App\Entity\RoomPrices {#2736
-id: 1495
-title: "InterContinental - Deluxe Face mer - Shoulder"
-room: App\Entity\Rooms {#2743}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736337600 {#2747
date: 2025-01-08 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746532800 {#2746
date: 2025-05-06 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2745
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2744
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 3
-doubleOccupancy: "370.00"
-singleOccupancy: "340.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: null
-defaultExtraLabel: "Demi Pension"
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2742
#collection: Doctrine\Common\Collections\ArrayCollection {#2741
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2743}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2740
#collection: Doctrine\Common\Collections\ArrayCollection {#2739
-elements: array:11 [
0 => App\Entity\RoomCapacities {#4058
-id: 2535
-room: App\Entity\Rooms {#2743}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#4057
-id: 3339
-room: App\Entity\Rooms {#2743}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#4056
-id: 3340
-room: App\Entity\Rooms {#2743}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#4055
-id: 3341
-room: App\Entity\Rooms {#2743}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#4054
-id: 3342
-room: App\Entity\Rooms {#2743}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#4053
-id: 3343
-room: App\Entity\Rooms {#2743}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#4052
-id: 3344
-room: App\Entity\Rooms {#2743}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#4051
-id: 3345
-room: App\Entity\Rooms {#2743}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#4050
-id: 3346
-room: App\Entity\Rooms {#2743}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#4049
-id: 3347
-room: App\Entity\Rooms {#2743}
-adults: 1
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#4048
-id: 3348
-room: App\Entity\Rooms {#2743}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:11 [ …11]
-owner: App\Entity\Rooms {#2743}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2670
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2661
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666aebaf5e554743585272.jpg"
-gallery: App\Entity\Galleries {#2735
-id: 89
-hotel: null
-room: App\Entity\Rooms {#2743}
-images: Doctrine\ORM\PersistentCollection {#2734
#collection: Doctrine\Common\Collections\ArrayCollection {#2733
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2735}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Intercontinental chambre deluxe face mer"
}
-mediaDirSlug: "76"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "deluxe-face-mer"
}
1 => App\Entity\Rooms {#2726
-id: 77
-name: "Prestige Vue mer"
-description: """
Les chambres d’une superficie de 56 mètres carré possèdent une vue mer sur l’Océan Indien. Surplombant les jardins et l’océan Indien le décor intérieur comprend des éléments d’artisanat Mauriciens, de textiles tissés à la main, des meubles fait mains et des objets d’art qui offrent un charme local unique. Les chambres du rez de chaussée offrent un accès direct aux jardins et à la plage.\r\n
\r\n
Les salles de bain en marbre créent une atmosphère de spa avec une profonde baignoire et une douche à l’italienne séparée. Le mobilier extérieur des terrasses permet aux clients de jouir d’une vue sur l’Ócéan Indien et des magnifiques couchers de soleil.\r\n
\r\n
De très grand lit ou de lits jumeaux sont disponibles, avec une capacité maximale de 2 adultes et 1 enfant de moins de 12 ans.
"""
-active: true
-hotel: App\Entity\Hotels {#1178}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#10720
-elements: array:1 [
0 => App\Entity\RoomPrices {#2719
-id: 1501
-title: "InterContinental - Prestige Vue mer - Shoulder"
-room: App\Entity\Rooms {#2726}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736337600 {#2730
date: 2025-01-08 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746532800 {#2729
date: 2025-05-06 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2728
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2727
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 3
-doubleOccupancy: "395.00"
-singleOccupancy: "365.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: null
-defaultExtraLabel: "Demi Pension"
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2725
#collection: Doctrine\Common\Collections\ArrayCollection {#2724
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2726}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2723
#collection: Doctrine\Common\Collections\ArrayCollection {#2722
-elements: array:12 [
0 => App\Entity\RoomCapacities {#4047
-id: 2545
-room: App\Entity\Rooms {#2726}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#4046
-id: 3349
-room: App\Entity\Rooms {#2726}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#4044
-id: 3350
-room: App\Entity\Rooms {#2726}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#4043
-id: 3351
-room: App\Entity\Rooms {#2726}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#4042
-id: 3352
-room: App\Entity\Rooms {#2726}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#4041
-id: 3353
-room: App\Entity\Rooms {#2726}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#4040
-id: 3354
-room: App\Entity\Rooms {#2726}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#4039
-id: 3355
-room: App\Entity\Rooms {#2726}
-adults: 1
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#4037
-id: 3356
-room: App\Entity\Rooms {#2726}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#3802
-id: 3357
-room: App\Entity\Rooms {#2726}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#3801
-id: 3358
-room: App\Entity\Rooms {#2726}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#3733
-id: 3359
-room: App\Entity\Rooms {#2726}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:12 [ …12]
-owner: App\Entity\Rooms {#2726}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2732
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1733330060 {#2731
date: 2024-12-04 16:34:20.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666aebea88d98706732414.jpg"
-gallery: App\Entity\Galleries {#2718
-id: 170
-hotel: null
-room: App\Entity\Rooms {#2726}
-images: Doctrine\ORM\PersistentCollection {#2717
#collection: Doctrine\Common\Collections\ArrayCollection {#2716
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2718}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Intercontinental prestige vue mer"
}
-mediaDirSlug: "77"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "prestige-vue-mer"
}
2 => App\Entity\Rooms {#2709
-id: 78
-name: "Terrace Suite"
-description: "Un havre de paix pour les couples en quête de romantisme. La chambre de 56 mètre carrés a également une terrasse de 33 mètre carrés équipée d' un bain a remous et faisant face à l’océan. Meublées dans un style contemporain chic et luxueux, les chambres sont pourvues d’une spacieuse salle de bain avec double vasque, baignoire profonde en pierre et d’une douche. Elles sont situées au deuxième étage de l’hôtel, chacune offrant des vues différentes."
-active: true
-hotel: App\Entity\Hotels {#1178}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#11276
-elements: array:1 [
0 => App\Entity\RoomPrices {#2702
-id: 1507
-title: "InterContinental - Terrace Suite - Shoulder"
-room: App\Entity\Rooms {#2709}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736337600 {#2713
date: 2025-01-08 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746532800 {#2712
date: 2025-05-06 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2711
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2710
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 3
-doubleOccupancy: "420.00"
-singleOccupancy: "390.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: null
-defaultExtraLabel: "Demi Pension"
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2708
#collection: Doctrine\Common\Collections\ArrayCollection {#2707
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2709}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2706
#collection: Doctrine\Common\Collections\ArrayCollection {#2705
-elements: array:11 [
0 => App\Entity\RoomCapacities {#3731
-id: 2557
-room: App\Entity\Rooms {#2709}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#3807
-id: 3360
-room: App\Entity\Rooms {#2709}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#4076
-id: 3361
-room: App\Entity\Rooms {#2709}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#4063
-id: 3362
-room: App\Entity\Rooms {#2709}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#4072
-id: 3363
-room: App\Entity\Rooms {#2709}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#4071
-id: 3364
-room: App\Entity\Rooms {#2709}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#4070
-id: 3365
-room: App\Entity\Rooms {#2709}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#4069
-id: 3366
-room: App\Entity\Rooms {#2709}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#4068
-id: 3367
-room: App\Entity\Rooms {#2709}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#4067
-id: 3368
-room: App\Entity\Rooms {#2709}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#4066
-id: 3369
-room: App\Entity\Rooms {#2709}
-adults: 1
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:11 [ …11]
-owner: App\Entity\Rooms {#2709}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2715
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2714
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666aec0f4cdb1843384550.jpg"
-gallery: App\Entity\Galleries {#2701
-id: 171
-hotel: null
-room: App\Entity\Rooms {#2709}
-images: Doctrine\ORM\PersistentCollection {#2700
#collection: Doctrine\Common\Collections\ArrayCollection {#2699
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2701}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Intercontinental terrace suite"
}
-mediaDirSlug: "78"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "terrace-suite"
}
3 => App\Entity\Rooms {#2691
-id: 79
-name: "Family Room"
-description: """
Endroit plus spacieux de 72 mètres carrés qui se compose d’une chambre principale avec un grand lit et d’une deuxième chambre à coucher avec deux lits simples; offrant intimité et paix à tous les membres de la famille. La salle de bain de la chambre famille comporte un wc, une double vasque, une baignoire en pierre et une douche pour une détente ultime.\r\n
\r\n
Sur un balcon meublé et privé, vous pourrez admirer la vue sur Balaclava et peut être profiter du coucher de soleil. Les chambres disposent d'une porte communicante, permettant aux clients de profiter d’une ambiance familiale ou même d’un peu d’intimité.\r\n
\r\n
Capacité Maximale : 4 clients (2 adultes & 2 enfants ou 3 adultes & 1 enfant)
"""
-active: true
-hotel: App\Entity\Hotels {#1178}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#11297
-elements: array:1 [
0 => App\Entity\RoomPrices {#2682
-id: 1513
-title: "InterContinental - Family Room - Shoulder"
-room: App\Entity\Rooms {#2691}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736337600 {#2696
date: 2025-01-08 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746532800 {#2694
date: 2025-05-06 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2693
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2692
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 3
-doubleOccupancy: "520.00"
-singleOccupancy: "520.00"
-tripleOccupancy: "550.00"
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: null
-defaultExtraLabel: "Demi Pension"
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2690
#collection: Doctrine\Common\Collections\ArrayCollection {#2688
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2691}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2687
#collection: Doctrine\Common\Collections\ArrayCollection {#2686
-elements: array:19 [
0 => App\Entity\RoomCapacities {#4073
-id: 2569
-room: App\Entity\Rooms {#2691}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#4074
-id: 3370
-room: App\Entity\Rooms {#2691}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#4087
-id: 3371
-room: App\Entity\Rooms {#2691}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#4085
-id: 3372
-room: App\Entity\Rooms {#2691}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#4086
-id: 3373
-room: App\Entity\Rooms {#2691}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#4083
-id: 3374
-room: App\Entity\Rooms {#2691}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#4084
-id: 3375
-room: App\Entity\Rooms {#2691}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#4081
-id: 3376
-room: App\Entity\Rooms {#2691}
-adults: 1
-teens: 2
-children: null
-babies: null
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#4082
-id: 3377
-room: App\Entity\Rooms {#2691}
-adults: 1
-teens: 2
-children: 1
-babies: null
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#4079
-id: 3378
-room: App\Entity\Rooms {#2691}
-adults: 1
-teens: 2
-children: null
-babies: 1
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#4080
-id: 3379
-room: App\Entity\Rooms {#2691}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#4077
-id: 3380
-room: App\Entity\Rooms {#2691}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#4078
-id: 3381
-room: App\Entity\Rooms {#2691}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#4075
-id: 3382
-room: App\Entity\Rooms {#2691}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
14 => App\Entity\RoomCapacities {#4090
-id: 3383
-room: App\Entity\Rooms {#2691}
-adults: 2
-teens: null
-children: 2
-babies: 2
-isDefaultConfig: false
}
15 => App\Entity\RoomCapacities {#4091
-id: 3384
-room: App\Entity\Rooms {#2691}
-adults: 3
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
16 => App\Entity\RoomCapacities {#4092
-id: 3385
-room: App\Entity\Rooms {#2691}
-adults: 3
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
17 => App\Entity\RoomCapacities {#4093
-id: 3386
-room: App\Entity\Rooms {#2691}
-adults: 3
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
18 => App\Entity\RoomCapacities {#4094
-id: 3482
-room: App\Entity\Rooms {#2691}
-adults: 2
-teens: 2
-children: null
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:19 [ …19]
-owner: App\Entity\Rooms {#2691}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2698
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1733330236 {#2697
date: 2024-12-04 16:37:16.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666aecbbcd812481373213.jpg"
-gallery: App\Entity\Galleries {#2681
-id: 172
-hotel: null
-room: App\Entity\Rooms {#2691}
-images: Doctrine\ORM\PersistentCollection {#2680
#collection: Doctrine\Common\Collections\ArrayCollection {#2679
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2681}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Intercontinental Family room"
}
-mediaDirSlug: "79"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "family-room"
}
4 => App\Entity\Rooms {#2671
-id: 80
-name: "Duplex Suite"
-description: "Chaque suite en duplex offre le summum en matière de luxe. Offrant 300 mètres carrés d’espace, ces suites sont parfaites pour les clients souhaitant vivre une exaltante expérience en se faisant chouchouter. Elles sont situées sur les étages supérieures de l’hôtel, avec deux terrasses chacune –une avec un jacuzzi et l’autre avec des chaises longues. L’étage au -dessous comporte un séjour et salle à manger, parfaite pour les réceptions, tandis que l’autre étage comprend une chambre principale avec une élégante salle de bains. Vous pourrez admirer la vue sur l’Ocean Indien."
-active: true
-hotel: App\Entity\Hotels {#1178}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#11318
-elements: array:1 [
0 => App\Entity\RoomPrices {#2659
-id: 1519
-title: "InterContinental - Duplex Suite - Shoulder"
-room: App\Entity\Rooms {#2671}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736337600 {#2675
date: 2025-01-08 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746532800 {#2674
date: 2025-05-06 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2673
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2672
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 3
-doubleOccupancy: "620.00"
-singleOccupancy: "620.00"
-tripleOccupancy: "650.00"
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: null
-defaultExtraLabel: "Demi Pension"
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2669
#collection: Doctrine\Common\Collections\ArrayCollection {#2668
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2671}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2667
#collection: Doctrine\Common\Collections\ArrayCollection {#2666
-elements: array:17 [
0 => App\Entity\RoomCapacities {#4095
-id: 2598
-room: App\Entity\Rooms {#2671}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#4096
-id: 2600
-room: App\Entity\Rooms {#2671}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#4097
-id: 2602
-room: App\Entity\Rooms {#2671}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#4098
-id: 2604
-room: App\Entity\Rooms {#2671}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#4099
-id: 2606
-room: App\Entity\Rooms {#2671}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#4100
-id: 2607
-room: App\Entity\Rooms {#2671}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#4101
-id: 2608
-room: App\Entity\Rooms {#2671}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#4102
-id: 2609
-room: App\Entity\Rooms {#2671}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#4103
-id: 2610
-room: App\Entity\Rooms {#2671}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#4104
-id: 2611
-room: App\Entity\Rooms {#2671}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#4105
-id: 2612
-room: App\Entity\Rooms {#2671}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#4106
-id: 2614
-room: App\Entity\Rooms {#2671}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#4107
-id: 2615
-room: App\Entity\Rooms {#2671}
-adults: 3
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#4108
-id: 2616
-room: App\Entity\Rooms {#2671}
-adults: 3
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
14 => App\Entity\RoomCapacities {#4109
-id: 3387
-room: App\Entity\Rooms {#2671}
-adults: 3
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
15 => App\Entity\RoomCapacities {#4110
-id: 3388
-room: App\Entity\Rooms {#2671}
-adults: 3
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
16 => App\Entity\RoomCapacities {#4111
-id: 3389
-room: App\Entity\Rooms {#2671}
-adults: 3
-teens: null
-children: 2
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:17 [ …17]
-owner: App\Entity\Rooms {#2671}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2678
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729679035 {#2676
date: 2024-10-23 10:23:55.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "6718967b7591a281527865.jpeg"
-gallery: App\Entity\Galleries {#2552
-id: 193
-hotel: null
-room: App\Entity\Rooms {#2671}
-images: Doctrine\ORM\PersistentCollection {#2388
#collection: Doctrine\Common\Collections\ArrayCollection {#2553
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2552}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "intercontinental duplex suite"
}
-mediaDirSlug: "80"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "duplex-suite-2"
}
]
}
#initialized: true
-snapshot: array:5 [ …5]
-owner: App\Entity\Hotels {#1178}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#880 …}
-backRefFieldName: "hotel"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-address: "Fort côtier Route Côtiere, Balaclava, Île Maurice"
-checkInTime: "8H-15H"
-checkOutTime: "12H-18H"
-babyAgeMax: "5"
-childAgeMax: "12"
-teenAgeMax: "99"
-extraCharges: Doctrine\ORM\PersistentCollection {#1181
#collection: Doctrine\Common\Collections\ArrayCollection {#1182
-elements: array:5 [
0 => App\Entity\ExtraCharges {#11366
-id: 1
-title: "Pension complète"
-description: null
-adultExtra: 40.0
-babyExtra: null
-childExtra: 20.0
-teenExtra: 40.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1178}
}
1 => App\Entity\ExtraCharges {#11371
-id: 2
-title: "Suppléments repas de Noêl"
-description: null
-adultExtra: 115.0
-babyExtra: 0.0
-childExtra: 60.0
-teenExtra: 115.0
-stayStartedAt: DateTimeImmutable @1734998400 {#11339
date: 2024-12-24 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1735171200 {#11365
date: 2024-12-26 00:00:00.0 UTC (+00:00)
}
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1178}
}
2 => App\Entity\ExtraCharges {#11373
-id: 50
-title: "Suppléments repas Tout compris"
-description: null
-adultExtra: 90.0
-babyExtra: null
-childExtra: 45.0
-teenExtra: 90.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1178}
}
3 => App\Entity\ExtraCharges {#11376
-id: 53
-title: "Suppléments repas Nouvel An"
-description: null
-adultExtra: 135.0
-babyExtra: null
-childExtra: 70.0
-teenExtra: 135.0
-stayStartedAt: DateTimeImmutable @1735603200 {#11374
date: 2024-12-31 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1735689600 {#11375
date: 2025-01-01 00:00:00.0 UTC (+00:00)
}
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1178}
}
4 => App\Entity\ExtraCharges {#11377
-id: 171
-title: "Base Demi pension"
-description: null
-adultExtra: 0.0
-babyExtra: 0.0
-childExtra: 0.0
-teenExtra: 0.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: true
-minNights: null
-hotel: App\Entity\Hotels {#1178}
}
]
}
#initialized: true
-snapshot: array:5 [ …5]
-owner: App\Entity\Hotels {#1178}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#876 …}
-backRefFieldName: "hotel"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-imageFile: null
-featuredImage: "66965a9978b3d026622378.jpg"
-gallery: App\Entity\Galleries {#1185
-id: 173
-hotel: App\Entity\Hotels {#1178}
-room: null
-images: Doctrine\ORM\PersistentCollection {#1186
#collection: Doctrine\Common\Collections\ArrayCollection {#1187
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1185}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Hotel Intercontinental"
}
-mediaDirSlug: null
-offers: Doctrine\Common\Collections\ArrayCollection {#11493}
-highlighted: true
-services: array:1 [
0 => ""
]
-hlStartAt: DateTimeImmutable @1736899200 {#1176
date: 2025-01-15 00:00:00.0 UTC (+00:00)
}
-hlEndAt: DateTimeImmutable @1737504000 {#1177
date: 2025-01-22 00:00:00.0 UTC (+00:00)
}
-slug: "intercontinental-resort"
}
-description: null
-stayStartAt: DateTimeImmutable @1719792000 {#11420
date: 2024-07-01 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1761868800 {#11396
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1719792000 {#11419
date: 2024-07-01 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1761868800 {#11425
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-reference: "EB"
-minNights: 1
-maxNights: null
-earlyBookingDays: 30
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#11428
#collection: Doctrine\Common\Collections\ArrayCollection {#11429
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#11427}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1075 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 20
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#11430
#collection: Doctrine\Common\Collections\ArrayCollection {#11431
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#11427}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1081 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-offers: Doctrine\ORM\PersistentCollection {#11432
#collection: Doctrine\Common\Collections\ArrayCollection {#11433
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#11427}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1085 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#11434
#collection: Doctrine\Common\Collections\ArrayCollection {#11435
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#11427}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1087 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#11436
#collection: Doctrine\Common\Collections\ArrayCollection {#11437
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#11427}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1093 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-extrasDiscount: null
-priority: 2
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
1 => App\Entity\Offers {#11442
-id: 128
-title: "ICMREFEB25"
-type: "Special"
-hotel: App\Entity\Hotels {#1178}
-description: null
-stayStartAt: DateTimeImmutable @1739664000 {#11438
date: 2025-02-16 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1746489600 {#11439
date: 2025-05-06 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1739664000 {#11440
date: 2025-02-16 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1743379200 {#11441
date: 2025-03-31 00:00:00.0 UTC (+00:00)
}
-reference: "ICMREFEB25"
-minNights: 3
-maxNights: null
-earlyBookingDays: null
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#11443
#collection: Doctrine\Common\Collections\ArrayCollection {#11444
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#11442}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1075 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 25
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#11445
#collection: Doctrine\Common\Collections\ArrayCollection {#11446
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#11442}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1081 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-offers: Doctrine\ORM\PersistentCollection {#11447
#collection: Doctrine\Common\Collections\ArrayCollection {#11448
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#11442}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1085 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#11449
#collection: Doctrine\Common\Collections\ArrayCollection {#11450
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#11442}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1087 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#11451
#collection: Doctrine\Common\Collections\ArrayCollection {#11452
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#11442}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1093 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-extrasDiscount: null
-priority: 1
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
]
}
1 in
PromotionDTO.php
line 546:
// if booking not respect the interval skip this offer - format('%a') return a string of the diff days, need to convert to integer value
if (intval($booking_interval->format('%a')) < $offer_earlybookingDays) {
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle() . '(nb jours: ' . $offer_earlybookingDays . ')', 'Early booking date interval failure. (début séjour dans '.$booking_interval->format('%a').' jours.)');
}
return $this;
}
"4 - EARLY BOOKING INTERCONTINENTAL(nb jours: 30)"
2 in
PromotionDTO.php
line 546:
// if booking not respect the interval skip this offer - format('%a') return a string of the diff days, need to convert to integer value
if (intval($booking_interval->format('%a')) < $offer_earlybookingDays) {
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle() . '(nb jours: ' . $offer_earlybookingDays . ')', 'Early booking date interval failure. (début séjour dans '.$booking_interval->format('%a').' jours.)');
}
return $this;
}
"Early booking date interval failure. (début séjour dans 27 jours.)"
1 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
"Step 1. Offres valides : "
2 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
array:1 [
0 => App\DTO\PromotionDTO {#11531
-debug: true
+id: 128
+title: "ICMREFEB25"
+description: null
+type: "Special"
+reference: "ICMREFEB25"
+from: DateTimeImmutable @1739664000 {#11438
date: 2025-02-16 00:00:00.0 UTC (+00:00)
}
+to: DateTimeImmutable @1746489600 {#11439
date: 2025-05-06 00:00:00.0 UTC (+00:00)
}
+earlyBookingDays: null
+minNights: 3
+maxNights: null
+discountRate: 25
+discountFamilyRates: []
+combinableRate: null
+priority: 1
+extrasDiscountRate: null
+isAllRooms: true
+isCombinable: false
+selectedRoomsIDs: []
+selectedExtrasIDs: []
+selectedOffersIDs: []
+selectedExtrasDiscountIDs: []
}
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : The Westin Turtle Bay Resort & Spa - Chambre : #91 - Junior Suite has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#11813
+rpId: 1586
+adultsPrice: 420
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : The Westin Turtle Bay Resort & Spa - Chambre : #92 - Turtle Bay Junior Suite has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#11834
+rpId: 1596
+adultsPrice: 450
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 450
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 450
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 450
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 450
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : The Westin Turtle Bay Resort & Spa - Chambre : #93 - Heavenly Junior Suite has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#11855
+rpId: 1606
+adultsPrice: 515
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 515
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 515
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 515
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 515
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : The Westin Turtle Bay Resort & Spa - Chambre : #94 - Heavenly Family Junior Suite has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#11876
+rpId: 1616
+adultsPrice: 545
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 545
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 545
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 545
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 545
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : The Westin Turtle Bay Resort & Spa - Chambre : #95 - Suite Bien-être has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#11897
+rpId: 1626
+adultsPrice: 480
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : The Westin Turtle Bay Resort & Spa - Chambre : #96 - Banyan Suite has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#11918
+rpId: 1637
+adultsPrice: 935
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 935
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 935
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 935
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 935
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : The Westin Turtle Bay Resort & Spa - Chambre : #97 - Suite Front de mer has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#11939
+rpId: 1647
+adultsPrice: 1200
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1200
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1200
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1200
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1200
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
"Update Stay Rooms - Chambers Prices"
2 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
array:1 [
0 => array:7 [
0 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
"room_id" => 91
"room_picture" => "/uploads/rooms/91/666be4967326a894772017.jpeg"
"room_name" => "Junior Suite"
"room_slug" => "junior-suite"
"room_description" => "Les Junior Suites sont orientées vers l'océan. Elles disposent d'un lit double, d'une salle de bain avec cabine de douche et baignoire, d'un coin salon et d'un balcon ou d'une terrasse."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1586
"adult_amount" => 1680
"children_amount" => 0
"basis_amount" => 1680
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
]
]
]
1 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 92
"room_picture" => "/uploads/rooms/92/666be4d92e348363074971.jpeg"
"room_name" => "Turtle Bay Junior Suite"
"room_slug" => "turtle-bay-junior-suite"
"room_description" => "Les Turtle Bay Junior Suites sont orientées vers l'océan. Elles disposent d'un lit double, d'une salle de bain avec cabine de douche et baignoire, d'une douche extérieure, d'un coin salon et d'une terrasse."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1596
"adult_amount" => 1800
"children_amount" => 0
"basis_amount" => 1800
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 450
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 450
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 450
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 450
"kids_price" => 0
]
]
]
]
2 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 93
"room_picture" => "/uploads/rooms/93/666be5d60eeaa651096605.jpeg"
"room_name" => "Heavenly Junior Suite"
"room_slug" => "heavenly-junior-suite"
"room_description" => "Les Heavenly Junior Suites sont orientées vers la plage. Elles disposent d'un lit double king-size, d'une salle de bain avec cabine de douche et baignoire, d'un coin salon et d'un balcon ou d'une terrasse."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1606
"adult_amount" => 2060
"children_amount" => 0
"basis_amount" => 2060
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 515
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 515
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 515
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 515
"kids_price" => 0
]
]
]
]
3 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 94
"room_picture" => "/uploads/rooms/94/666be6141b9cd892287169.jpeg"
"room_name" => "Heavenly Family Junior Suite"
"room_slug" => "heavenly-family-junior-suite"
"room_description" => "Les Heavenly Family Junior Suites sont orientées vers l'océan. Elles disposent d'un lit double King-size, d'une salle de bain avec cabine de douche et baignoire, d'un coin salon avec sofa lit et d'un balcon ou d'une terrasse."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1616
"adult_amount" => 2180
"children_amount" => 0
"basis_amount" => 2180
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 545
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 545
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 545
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 545
"kids_price" => 0
]
]
]
]
4 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 95
"room_picture" => "/uploads/rooms/95/666be63717792054510894.jpeg"
"room_name" => "Suite Bien-être"
"room_slug" => "suite-bien-etre"
"room_description" => "Les Wellbeing Suites sont orientées vers l'océan. Elles disposent d'un lit double, d'une salle de bain avec cabine de douche et baignoire, d'un coin salon, d'un espace repas et d'un balcon ou d'une terrasse."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1626
"adult_amount" => 1920
"children_amount" => 0
"basis_amount" => 1920
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
]
]
]
5 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 96
"room_picture" => "/uploads/rooms/96/666be66ea6b61120955048.jpeg"
"room_name" => "Banyan Suite"
"room_slug" => "banyan-suite"
"room_description" => "Les Bayan Suites sont orientées vers l'océan. Elles disposent d'un lit double, d'une salle de bain avec cabine de douche et baignoire, d'un salon séparé et d'un balcon ou d'une terrasse. En réservant cette suite, bénéficiez des avantages "Club" de l'hôtel et de l'accès au Executive Club Lounge."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1637
"adult_amount" => 3740
"children_amount" => 0
"basis_amount" => 3740
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 935
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 935
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 935
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 935
"kids_price" => 0
]
]
]
]
6 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 97
"room_picture" => "/uploads/rooms/97/666be6ada4789910694686.jpeg"
"room_name" => "Suite Front de mer"
"room_slug" => "suite-front-de-mer"
"room_description" => "Les Beachfront Suites sont orientées vers l'océan. Elles disposent d'un lit double, d'une salle de bain avec cabine de douche et baignoire, d'un salon séparé équipé d'un canapé-lit, d'un espace repas et d'une grande terrasse. En réservant cette suite, bénéficiez des avantages et de l'accès au Executive Club Lounge."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1647
"adult_amount" => 4800
"children_amount" => 0
"basis_amount" => 4800
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1200
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1200
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1200
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1200
"kids_price" => 0
]
]
]
]
]
]
1 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
"Update Stay Rooms results"
2 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
array:7 [
0 => App\DTO\RoomStayDTO {#11378
-marginRate: 20
-id: 91
-name: "Junior Suite"
-slug: "junior-suite"
-picture: "/uploads/rooms/91/666be4967326a894772017.jpeg"
-description: "Les Junior Suites sont orientées vers l'océan. Elles disposent d'un lit double, d'une salle de bain avec cabine de douche et baignoire, d'un coin salon et d'un balcon ou d'une terrasse."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 178
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 420
"kids_price" => 0
]
]
"amount" => 1680
]
]
-totalRoomAmount: 1680.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:5 [
0 => App\DTO\ExtraStayDTO {#11960
-marginRate: 20
+extraId: 178
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1680.0
+totalStayAmountWoDiscount: 1680.0
+totalStayAmount: 1680.0
+finalAmountWoDiscount: 2016.0
+finalAmount: 2016.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#11963
-marginRate: 20
+extraId: 64
+name: "Par Enfant (3-12 ans) chambre seul Déjeuner"
+description: null
+stayTotalNights: 4
+dailyAdults: 40
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 160
+kidsExtrasAmount: 0
+stayExtrasAmount: 160
+stayRoomAmount: 1680.0
+totalStayAmountWoDiscount: 1840.0
+totalStayAmount: 1840.0
+finalAmountWoDiscount: 2208.0
+finalAmount: 2208.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#11974
-marginRate: 20
+extraId: 66
+name: "Dîner"
+description: null
+stayTotalNights: 4
+dailyAdults: 50
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 200
+kidsExtrasAmount: 0
+stayExtrasAmount: 200
+stayRoomAmount: 1680.0
+totalStayAmountWoDiscount: 1880.0
+totalStayAmount: 1880.0
+finalAmountWoDiscount: 2256.0
+finalAmount: 2256.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#11975
-marginRate: 20
+extraId: 60
+name: "Déjeuner"
+description: null
+stayTotalNights: 4
+dailyAdults: 80
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 320
+kidsExtrasAmount: 0
+stayExtrasAmount: 320
+stayRoomAmount: 1680.0
+totalStayAmountWoDiscount: 2000.0
+totalStayAmount: 2000.0
+finalAmountWoDiscount: 2400.0
+finalAmount: 2400.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
4 => App\DTO\ExtraStayDTO {#11976
-marginRate: 20
+extraId: 61
+name: "Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 1680.0
+totalStayAmountWoDiscount: 2320.0
+totalStayAmount: 2320.0
+finalAmountWoDiscount: 2784.0
+finalAmount: 2784.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
1 => App\DTO\RoomStayDTO {#11914
-marginRate: 20
-id: 92
-name: "Turtle Bay Junior Suite"
-slug: "turtle-bay-junior-suite"
-picture: "/uploads/rooms/92/666be4d92e348363074971.jpeg"
-description: "Les Turtle Bay Junior Suites sont orientées vers l'océan. Elles disposent d'un lit double, d'une salle de bain avec cabine de douche et baignoire, d'une douche extérieure, d'un coin salon et d'une terrasse."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 178
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 450
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 450
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 450
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 450
"kids_price" => 0
]
]
"amount" => 1800
]
]
-totalRoomAmount: 1800.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:5 [
0 => App\DTO\ExtraStayDTO {#11977
-marginRate: 20
+extraId: 178
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1800.0
+totalStayAmountWoDiscount: 1800.0
+totalStayAmount: 1800.0
+finalAmountWoDiscount: 2160.0
+finalAmount: 2160.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#11978
-marginRate: 20
+extraId: 64
+name: "Par Enfant (3-12 ans) chambre seul Déjeuner"
+description: null
+stayTotalNights: 4
+dailyAdults: 40
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 160
+kidsExtrasAmount: 0
+stayExtrasAmount: 160
+stayRoomAmount: 1800.0
+totalStayAmountWoDiscount: 1960.0
+totalStayAmount: 1960.0
+finalAmountWoDiscount: 2352.0
+finalAmount: 2352.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#11979
-marginRate: 20
+extraId: 66
+name: "Dîner"
+description: null
+stayTotalNights: 4
+dailyAdults: 50
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 200
+kidsExtrasAmount: 0
+stayExtrasAmount: 200
+stayRoomAmount: 1800.0
+totalStayAmountWoDiscount: 2000.0
+totalStayAmount: 2000.0
+finalAmountWoDiscount: 2400.0
+finalAmount: 2400.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#11980
-marginRate: 20
+extraId: 60
+name: "Déjeuner"
+description: null
+stayTotalNights: 4
+dailyAdults: 80
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 320
+kidsExtrasAmount: 0
+stayExtrasAmount: 320
+stayRoomAmount: 1800.0
+totalStayAmountWoDiscount: 2120.0
+totalStayAmount: 2120.0
+finalAmountWoDiscount: 2544.0
+finalAmount: 2544.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
4 => App\DTO\ExtraStayDTO {#11981
-marginRate: 20
+extraId: 61
+name: "Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 1800.0
+totalStayAmountWoDiscount: 2440.0
+totalStayAmount: 2440.0
+finalAmountWoDiscount: 2928.0
+finalAmount: 2928.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
2 => App\DTO\RoomStayDTO {#11935
-marginRate: 20
-id: 93
-name: "Heavenly Junior Suite"
-slug: "heavenly-junior-suite"
-picture: "/uploads/rooms/93/666be5d60eeaa651096605.jpeg"
-description: "Les Heavenly Junior Suites sont orientées vers la plage. Elles disposent d'un lit double king-size, d'une salle de bain avec cabine de douche et baignoire, d'un coin salon et d'un balcon ou d'une terrasse."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 178
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 515
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 515
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 515
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 515
"kids_price" => 0
]
]
"amount" => 2060
]
]
-totalRoomAmount: 2060.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:5 [
0 => App\DTO\ExtraStayDTO {#11982
-marginRate: 20
+extraId: 178
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2060.0
+totalStayAmountWoDiscount: 2060.0
+totalStayAmount: 2060.0
+finalAmountWoDiscount: 2472.0
+finalAmount: 2472.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#11983
-marginRate: 20
+extraId: 64
+name: "Par Enfant (3-12 ans) chambre seul Déjeuner"
+description: null
+stayTotalNights: 4
+dailyAdults: 40
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 160
+kidsExtrasAmount: 0
+stayExtrasAmount: 160
+stayRoomAmount: 2060.0
+totalStayAmountWoDiscount: 2220.0
+totalStayAmount: 2220.0
+finalAmountWoDiscount: 2664.0
+finalAmount: 2664.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#11984
-marginRate: 20
+extraId: 66
+name: "Dîner"
+description: null
+stayTotalNights: 4
+dailyAdults: 50
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 200
+kidsExtrasAmount: 0
+stayExtrasAmount: 200
+stayRoomAmount: 2060.0
+totalStayAmountWoDiscount: 2260.0
+totalStayAmount: 2260.0
+finalAmountWoDiscount: 2712.0
+finalAmount: 2712.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#11985
-marginRate: 20
+extraId: 60
+name: "Déjeuner"
+description: null
+stayTotalNights: 4
+dailyAdults: 80
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 320
+kidsExtrasAmount: 0
+stayExtrasAmount: 320
+stayRoomAmount: 2060.0
+totalStayAmountWoDiscount: 2380.0
+totalStayAmount: 2380.0
+finalAmountWoDiscount: 2856.0
+finalAmount: 2856.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
4 => App\DTO\ExtraStayDTO {#11986
-marginRate: 20
+extraId: 61
+name: "Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 2060.0
+totalStayAmountWoDiscount: 2700.0
+totalStayAmount: 2700.0
+finalAmountWoDiscount: 3240.0
+finalAmount: 3240.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
3 => App\DTO\RoomStayDTO {#11934
-marginRate: 20
-id: 94
-name: "Heavenly Family Junior Suite"
-slug: "heavenly-family-junior-suite"
-picture: "/uploads/rooms/94/666be6141b9cd892287169.jpeg"
-description: "Les Heavenly Family Junior Suites sont orientées vers l'océan. Elles disposent d'un lit double King-size, d'une salle de bain avec cabine de douche et baignoire, d'un coin salon avec sofa lit et d'un balcon ou d'une terrasse."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 178
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 545
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 545
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 545
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 545
"kids_price" => 0
]
]
"amount" => 2180
]
]
-totalRoomAmount: 2180.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:5 [
0 => App\DTO\ExtraStayDTO {#11987
-marginRate: 20
+extraId: 178
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2180.0
+totalStayAmountWoDiscount: 2180.0
+totalStayAmount: 2180.0
+finalAmountWoDiscount: 2616.0
+finalAmount: 2616.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#11988
-marginRate: 20
+extraId: 64
+name: "Par Enfant (3-12 ans) chambre seul Déjeuner"
+description: null
+stayTotalNights: 4
+dailyAdults: 40
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 160
+kidsExtrasAmount: 0
+stayExtrasAmount: 160
+stayRoomAmount: 2180.0
+totalStayAmountWoDiscount: 2340.0
+totalStayAmount: 2340.0
+finalAmountWoDiscount: 2808.0
+finalAmount: 2808.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#11989
-marginRate: 20
+extraId: 66
+name: "Dîner"
+description: null
+stayTotalNights: 4
+dailyAdults: 50
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 200
+kidsExtrasAmount: 0
+stayExtrasAmount: 200
+stayRoomAmount: 2180.0
+totalStayAmountWoDiscount: 2380.0
+totalStayAmount: 2380.0
+finalAmountWoDiscount: 2856.0
+finalAmount: 2856.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#11990
-marginRate: 20
+extraId: 60
+name: "Déjeuner"
+description: null
+stayTotalNights: 4
+dailyAdults: 80
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 320
+kidsExtrasAmount: 0
+stayExtrasAmount: 320
+stayRoomAmount: 2180.0
+totalStayAmountWoDiscount: 2500.0
+totalStayAmount: 2500.0
+finalAmountWoDiscount: 3000.0
+finalAmount: 3000.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
4 => App\DTO\ExtraStayDTO {#11991
-marginRate: 20
+extraId: 61
+name: "Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 2180.0
+totalStayAmountWoDiscount: 2820.0
+totalStayAmount: 2820.0
+finalAmountWoDiscount: 3384.0
+finalAmount: 3384.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
4 => App\DTO\RoomStayDTO {#11912
-marginRate: 20
-id: 95
-name: "Suite Bien-être"
-slug: "suite-bien-etre"
-picture: "/uploads/rooms/95/666be63717792054510894.jpeg"
-description: "Les Wellbeing Suites sont orientées vers l'océan. Elles disposent d'un lit double, d'une salle de bain avec cabine de douche et baignoire, d'un coin salon, d'un espace repas et d'un balcon ou d'une terrasse."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 178
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
]
"amount" => 1920
]
]
-totalRoomAmount: 1920.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:5 [
0 => App\DTO\ExtraStayDTO {#11992
-marginRate: 20
+extraId: 178
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1920.0
+totalStayAmountWoDiscount: 1920.0
+totalStayAmount: 1920.0
+finalAmountWoDiscount: 2304.0
+finalAmount: 2304.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#11993
-marginRate: 20
+extraId: 64
+name: "Par Enfant (3-12 ans) chambre seul Déjeuner"
+description: null
+stayTotalNights: 4
+dailyAdults: 40
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 160
+kidsExtrasAmount: 0
+stayExtrasAmount: 160
+stayRoomAmount: 1920.0
+totalStayAmountWoDiscount: 2080.0
+totalStayAmount: 2080.0
+finalAmountWoDiscount: 2496.0
+finalAmount: 2496.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#11994
-marginRate: 20
+extraId: 66
+name: "Dîner"
+description: null
+stayTotalNights: 4
+dailyAdults: 50
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 200
+kidsExtrasAmount: 0
+stayExtrasAmount: 200
+stayRoomAmount: 1920.0
+totalStayAmountWoDiscount: 2120.0
+totalStayAmount: 2120.0
+finalAmountWoDiscount: 2544.0
+finalAmount: 2544.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#11995
-marginRate: 20
+extraId: 60
+name: "Déjeuner"
+description: null
+stayTotalNights: 4
+dailyAdults: 80
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 320
+kidsExtrasAmount: 0
+stayExtrasAmount: 320
+stayRoomAmount: 1920.0
+totalStayAmountWoDiscount: 2240.0
+totalStayAmount: 2240.0
+finalAmountWoDiscount: 2688.0
+finalAmount: 2688.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
4 => App\DTO\ExtraStayDTO {#11996
-marginRate: 20
+extraId: 61
+name: "Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 1920.0
+totalStayAmountWoDiscount: 2560.0
+totalStayAmount: 2560.0
+finalAmountWoDiscount: 3072.0
+finalAmount: 3072.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
5 => App\DTO\RoomStayDTO {#11953
-marginRate: 20
-id: 96
-name: "Banyan Suite"
-slug: "banyan-suite"
-picture: "/uploads/rooms/96/666be66ea6b61120955048.jpeg"
-description: "Les Bayan Suites sont orientées vers l'océan. Elles disposent d'un lit double, d'une salle de bain avec cabine de douche et baignoire, d'un salon séparé et d'un balcon ou d'une terrasse. En réservant cette suite, bénéficiez des avantages "Club" de l'hôtel et de l'accès au Executive Club Lounge."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 178
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 935
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 935
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 935
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 935
"kids_price" => 0
]
]
"amount" => 3740
]
]
-totalRoomAmount: 3740.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:5 [
0 => App\DTO\ExtraStayDTO {#11997
-marginRate: 20
+extraId: 178
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 3740.0
+totalStayAmountWoDiscount: 3740.0
+totalStayAmount: 3740.0
+finalAmountWoDiscount: 4488.0
+finalAmount: 4488.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#11998
-marginRate: 20
+extraId: 64
+name: "Par Enfant (3-12 ans) chambre seul Déjeuner"
+description: null
+stayTotalNights: 4
+dailyAdults: 40
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 160
+kidsExtrasAmount: 0
+stayExtrasAmount: 160
+stayRoomAmount: 3740.0
+totalStayAmountWoDiscount: 3900.0
+totalStayAmount: 3900.0
+finalAmountWoDiscount: 4680.0
+finalAmount: 4680.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#11999
-marginRate: 20
+extraId: 66
+name: "Dîner"
+description: null
+stayTotalNights: 4
+dailyAdults: 50
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 200
+kidsExtrasAmount: 0
+stayExtrasAmount: 200
+stayRoomAmount: 3740.0
+totalStayAmountWoDiscount: 3940.0
+totalStayAmount: 3940.0
+finalAmountWoDiscount: 4728.0
+finalAmount: 4728.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#12000
-marginRate: 20
+extraId: 60
+name: "Déjeuner"
+description: null
+stayTotalNights: 4
+dailyAdults: 80
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 320
+kidsExtrasAmount: 0
+stayExtrasAmount: 320
+stayRoomAmount: 3740.0
+totalStayAmountWoDiscount: 4060.0
+totalStayAmount: 4060.0
+finalAmountWoDiscount: 4872.0
+finalAmount: 4872.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
4 => App\DTO\ExtraStayDTO {#12001
-marginRate: 20
+extraId: 61
+name: "Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 3740.0
+totalStayAmountWoDiscount: 4380.0
+totalStayAmount: 4380.0
+finalAmountWoDiscount: 5256.0
+finalAmount: 5256.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
6 => App\DTO\RoomStayDTO {#11928
-marginRate: 20
-id: 97
-name: "Suite Front de mer"
-slug: "suite-front-de-mer"
-picture: "/uploads/rooms/97/666be6ada4789910694686.jpeg"
-description: "Les Beachfront Suites sont orientées vers l'océan. Elles disposent d'un lit double, d'une salle de bain avec cabine de douche et baignoire, d'un salon séparé équipé d'un canapé-lit, d'un espace repas et d'une grande terrasse. En réservant cette suite, bénéficiez des avantages et de l'accès au Executive Club Lounge."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 178
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1200
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1200
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1200
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1200
"kids_price" => 0
]
]
"amount" => 4800
]
]
-totalRoomAmount: 4800.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:5 [
0 => App\DTO\ExtraStayDTO {#12002
-marginRate: 20
+extraId: 178
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 4800.0
+totalStayAmountWoDiscount: 4800.0
+totalStayAmount: 4800.0
+finalAmountWoDiscount: 5760.0
+finalAmount: 5760.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#12003
-marginRate: 20
+extraId: 64
+name: "Par Enfant (3-12 ans) chambre seul Déjeuner"
+description: null
+stayTotalNights: 4
+dailyAdults: 40
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 160
+kidsExtrasAmount: 0
+stayExtrasAmount: 160
+stayRoomAmount: 4800.0
+totalStayAmountWoDiscount: 4960.0
+totalStayAmount: 4960.0
+finalAmountWoDiscount: 5952.0
+finalAmount: 5952.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#12004
-marginRate: 20
+extraId: 66
+name: "Dîner"
+description: null
+stayTotalNights: 4
+dailyAdults: 50
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 200
+kidsExtrasAmount: 0
+stayExtrasAmount: 200
+stayRoomAmount: 4800.0
+totalStayAmountWoDiscount: 5000.0
+totalStayAmount: 5000.0
+finalAmountWoDiscount: 6000.0
+finalAmount: 6000.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#12005
-marginRate: 20
+extraId: 60
+name: "Déjeuner"
+description: null
+stayTotalNights: 4
+dailyAdults: 80
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 320
+kidsExtrasAmount: 0
+stayExtrasAmount: 320
+stayRoomAmount: 4800.0
+totalStayAmountWoDiscount: 5120.0
+totalStayAmount: 5120.0
+finalAmountWoDiscount: 6144.0
+finalAmount: 6144.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
4 => App\DTO\ExtraStayDTO {#12006
-marginRate: 20
+extraId: 61
+name: "Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 4800.0
+totalStayAmountWoDiscount: 5440.0
+totalStayAmount: 5440.0
+finalAmountWoDiscount: 6528.0
+finalAmount: 6528.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
]
1 in
RoomStayCalculation.php
line 274:
{
$offers_eligibled = [];
if ($this->debug) {
dump('All available offers of the hotel', $offers);
}
foreach ($offers as $key => $offer) {
"All available offers of the hotel"
2 in
RoomStayCalculation.php
line 274:
{
$offers_eligibled = [];
if ($this->debug) {
dump('All available offers of the hotel', $offers);
}
foreach ($offers as $key => $offer) {
Doctrine\Common\Collections\ArrayCollection {#12175
-elements: array:3 [
0 => App\Entity\Offers {#12064
-id: 3
-title: "EBO THE WESTIN"
-type: "EarlyBooking"
-hotel: App\Entity\Hotels {#1190
-id: 16
-name: "The Westin Turtle Bay Resort & Spa"
-description: "En tant qu'hôtel 5 étoiles à l'île Maurice situé à Balaclava, notre engagement envers votre bien-être va au-delà des frontières de notre resort. L'île Maurice, célèbre pour sa beauté pittoresque et ses plages paradisiaques, devient le cadre idéal pour une escapade mémorable. Au Westin Turtle Bay Resort & Spa Mauritius, notre formule tout compris à l'île Maurice vous offre bien plus qu'un séjour confortable. Elle vous permet d'explorer cette destination enchanteresse en toute sérénité. Notre équipe dévouée se fait un plaisir de vous guider à travers une multitude d'activités locales, vous permettant ainsi de vivre pleinement l'essence même de l'île Maurice, de ses saveurs exotiques à ses paysages époustouflants.Dans notre hôtel, chaque détail est conçu pour vous offrir une expérience inoubliable à l'île Maurice. Nos installations haut de gamme, notre service attentif et notre emplacement privilégié à Turtle Bay font de votre séjour un véritable moment de détente et de découverte, où chaque journée apporte son lot de souvenirs à chérir."
-website: "https://www.marriott.com/en-us/hotels/mrutb-the-westin-turtle-bay-resort-and-spa-mauritius/overview/"
-stars: 5
-youtubeVideoId: "BhY7g4yJaT0"
-phone: "+230 204 1400"
-email: "booking@westinresortmauritius.com"
-active: true
-gmapUrl: "<iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3747.038510191131!2d57.50785771217249!3d-20.090676981256216!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x217c53aa316d8e79%3A0xc479c0ed4774c8e7!2sThe%20Westin%20Turtle%20Bay%20Resort%20%26%20Spa%2C%20Mauritius!5e0!3m2!1sfr!2sfr!4v1718969316827!5m2!1sfr!2sfr" width="100%" height="600" style="border:0;" allowfullscreen="" loading="lazy" referrerpolicy="no-referrer-when-downgrade"></iframe>"
-zone: "Nord-Ouest"
-createdAt: DateTimeImmutable @1714145854 {#1188
date: 2024-04-26 15:37:34.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672825 {#1189
date: 2024-10-23 08:40:25.0 UTC (+00:00)
}
-rooms: Doctrine\ORM\PersistentCollection {#1191
#collection: Doctrine\Common\Collections\ArrayCollection {#1192
-elements: array:7 [
0 => App\Entity\Rooms {#2839
-id: 91
-name: "Junior Suite"
-description: "Les Junior Suites sont orientées vers l'océan. Elles disposent d'un lit double, d'une salle de bain avec cabine de douche et baignoire, d'un coin salon et d'un balcon ou d'une terrasse."
-active: true
-hotel: App\Entity\Hotels {#1190}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#11805
-elements: array:1 [
0 => App\Entity\RoomPrices {#2832
-id: 1586
-title: "Junior Suite - Shoulder Season"
-room: App\Entity\Rooms {#2839}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736510400 {#2775
date: 2025-01-10 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743768000 {#987
date: 2025-04-04 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2841
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2840
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "420.00"
-singleOccupancy: "400.00"
-tripleOccupancy: "75.00"
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: null
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2838
#collection: Doctrine\Common\Collections\ArrayCollection {#2837
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2839}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2836
#collection: Doctrine\Common\Collections\ArrayCollection {#2835
-elements: array:7 [
0 => App\Entity\RoomCapacities {#4137
-id: 2035
-room: App\Entity\Rooms {#2839}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#4136
-id: 2036
-room: App\Entity\Rooms {#2839}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#4135
-id: 2037
-room: App\Entity\Rooms {#2839}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#4134
-id: 2038
-room: App\Entity\Rooms {#2839}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#4133
-id: 2039
-room: App\Entity\Rooms {#2839}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#4132
-id: 2040
-room: App\Entity\Rooms {#2839}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#4131
-id: 2879
-room: App\Entity\Rooms {#2839}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:7 [ …7]
-owner: App\Entity\Rooms {#2839}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2846
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2760
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666be4967326a894772017.jpeg"
-gallery: App\Entity\Galleries {#2831
-id: 5
-hotel: null
-room: App\Entity\Rooms {#2839}
-images: Doctrine\ORM\PersistentCollection {#2830
#collection: Doctrine\Common\Collections\ArrayCollection {#2829
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2831}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "The Westin Junior Suite"
}
-mediaDirSlug: "91"
-lowerRoomPrice: null
-services: null
-slug: "junior-suite"
}
1 => App\Entity\Rooms {#2822
-id: 92
-name: "Turtle Bay Junior Suite"
-description: "Les Turtle Bay Junior Suites sont orientées vers l'océan. Elles disposent d'un lit double, d'une salle de bain avec cabine de douche et baignoire, d'une douche extérieure, d'un coin salon et d'une terrasse."
-active: true
-hotel: App\Entity\Hotels {#1190}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#11800
-elements: array:1 [
0 => App\Entity\RoomPrices {#2778
-id: 1596
-title: "Turtle Bay Junior Suite - Shoulder Season"
-room: App\Entity\Rooms {#2822}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736510400 {#2826
date: 2025-01-10 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743768000 {#2825
date: 2025-04-04 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2824
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2823
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "450.00"
-singleOccupancy: "430.00"
-tripleOccupancy: "75.00"
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: null
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2821
#collection: Doctrine\Common\Collections\ArrayCollection {#2820
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2822}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2819
#collection: Doctrine\Common\Collections\ArrayCollection {#2774
-elements: array:8 [
0 => App\Entity\RoomCapacities {#4130
-id: 2041
-room: App\Entity\Rooms {#2822}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#4129
-id: 2042
-room: App\Entity\Rooms {#2822}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#4128
-id: 2043
-room: App\Entity\Rooms {#2822}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#4127
-id: 2044
-room: App\Entity\Rooms {#2822}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#4126
-id: 2045
-room: App\Entity\Rooms {#2822}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#4125
-id: 2046
-room: App\Entity\Rooms {#2822}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#4124
-id: 2047
-room: App\Entity\Rooms {#2822}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#4123
-id: 2048
-room: App\Entity\Rooms {#2822}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:8 [ …8]
-owner: App\Entity\Rooms {#2822}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2828
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2827
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666be4d92e348363074971.jpeg"
-gallery: App\Entity\Galleries {#2773
-id: 102
-hotel: null
-room: App\Entity\Rooms {#2822}
-images: Doctrine\ORM\PersistentCollection {#2780
#collection: Doctrine\Common\Collections\ArrayCollection {#2783
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2773}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Westin turtle bay junior suite"
}
-mediaDirSlug: "92"
-lowerRoomPrice: null
-services: null
-slug: "turtle-bay-junior-suite"
}
2 => App\Entity\Rooms {#2790
-id: 93
-name: "Heavenly Junior Suite"
-description: "Les Heavenly Junior Suites sont orientées vers la plage. Elles disposent d'un lit double king-size, d'une salle de bain avec cabine de douche et baignoire, d'un coin salon et d'un balcon ou d'une terrasse."
-active: true
-hotel: App\Entity\Hotels {#1190}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#11823
-elements: array:1 [
0 => App\Entity\RoomPrices {#2799
-id: 1606
-title: "Heavenly Junior Suite - Shoulder Season"
-room: App\Entity\Rooms {#2790}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736510400 {#2779
date: 2025-01-10 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743768000 {#2786
date: 2025-04-04 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2789
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2788
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "515.00"
-singleOccupancy: "495.00"
-tripleOccupancy: "75.00"
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: null
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2785
#collection: Doctrine\Common\Collections\ArrayCollection {#2792
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2790}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2795
#collection: Doctrine\Common\Collections\ArrayCollection {#2794
-elements: array:6 [
0 => App\Entity\RoomCapacities {#4122
-id: 2049
-room: App\Entity\Rooms {#2790}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#4121
-id: 2050
-room: App\Entity\Rooms {#2790}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#4119
-id: 2051
-room: App\Entity\Rooms {#2790}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#4118
-id: 2052
-room: App\Entity\Rooms {#2790}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#4117
-id: 2053
-room: App\Entity\Rooms {#2790}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#4116
-id: 2054
-room: App\Entity\Rooms {#2790}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:6 [ …6]
-owner: App\Entity\Rooms {#2790}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2782
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2784
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666be5d60eeaa651096605.jpeg"
-gallery: App\Entity\Galleries {#2802
-id: 103
-hotel: null
-room: App\Entity\Rooms {#2790}
-images: Doctrine\ORM\PersistentCollection {#2801
#collection: Doctrine\Common\Collections\ArrayCollection {#2803
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2802}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Westin heavenly junior suite"
}
-mediaDirSlug: "93"
-lowerRoomPrice: null
-services: null
-slug: "heavenly-junior-suite"
}
3 => App\Entity\Rooms {#2797
-id: 94
-name: "Heavenly Family Junior Suite"
-description: "Les Heavenly Family Junior Suites sont orientées vers l'océan. Elles disposent d'un lit double King-size, d'une salle de bain avec cabine de douche et baignoire, d'un coin salon avec sofa lit et d'un balcon ou d'une terrasse."
-active: true
-hotel: App\Entity\Hotels {#1190}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#11844
-elements: array:1 [
0 => App\Entity\RoomPrices {#2758
-id: 1616
-title: "Heavenly Family Junior Suite - Shoulder Season"
-room: App\Entity\Rooms {#2797}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736510400 {#2808
date: 2025-01-10 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743768000 {#2807
date: 2025-04-04 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2809
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2810
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "545.00"
-singleOccupancy: "545.00"
-tripleOccupancy: "75.00"
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: null
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2811
#collection: Doctrine\Common\Collections\ArrayCollection {#2772
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2797}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2813
#collection: Doctrine\Common\Collections\ArrayCollection {#2816
-elements: array:10 [
0 => App\Entity\RoomCapacities {#4115
-id: 2055
-room: App\Entity\Rooms {#2797}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#4114
-id: 2056
-room: App\Entity\Rooms {#2797}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#4112
-id: 2057
-room: App\Entity\Rooms {#2797}
-adults: 3
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#4059
-id: 2058
-room: App\Entity\Rooms {#2797}
-adults: 3
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#4060
-id: 2059
-room: App\Entity\Rooms {#2797}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#3806
-id: 2060
-room: App\Entity\Rooms {#2797}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#3804
-id: 2061
-room: App\Entity\Rooms {#2797}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#4065
-id: 2062
-room: App\Entity\Rooms {#2797}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#4155
-id: 2063
-room: App\Entity\Rooms {#2797}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#4142
-id: 2064
-room: App\Entity\Rooms {#2797}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:10 [ …10]
-owner: App\Entity\Rooms {#2797}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2798
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2805
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666be6141b9cd892287169.jpeg"
-gallery: App\Entity\Galleries {#2759
-id: 104
-hotel: null
-room: App\Entity\Rooms {#2797}
-images: Doctrine\ORM\PersistentCollection {#2761
#collection: Doctrine\Common\Collections\ArrayCollection {#2762
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2759}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Westin heavenly family junior suite"
}
-mediaDirSlug: "94"
-lowerRoomPrice: null
-services: null
-slug: "heavenly-family-junior-suite"
}
4 => App\Entity\Rooms {#2770
-id: 95
-name: "Suite Bien-être"
-description: "Les Wellbeing Suites sont orientées vers l'océan. Elles disposent d'un lit double, d'une salle de bain avec cabine de douche et baignoire, d'un coin salon, d'un espace repas et d'un balcon ou d'une terrasse."
-active: true
-hotel: App\Entity\Hotels {#1190}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#11865
-elements: array:1 [
0 => App\Entity\RoomPrices {#2806
-id: 1626
-title: "Suite Bien-être - Shoulder Season"
-room: App\Entity\Rooms {#2770}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736510400 {#2765
date: 2025-01-10 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743768000 {#2767
date: 2025-04-04 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2768
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2769
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "480.00"
-singleOccupancy: "460.00"
-tripleOccupancy: "75.00"
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: null
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2771
#collection: Doctrine\Common\Collections\ArrayCollection {#2750
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2770}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2781
#collection: Doctrine\Common\Collections\ArrayCollection {#2787
-elements: array:6 [
0 => App\Entity\RoomCapacities {#4151
-id: 2065
-room: App\Entity\Rooms {#2770}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#4150
-id: 2066
-room: App\Entity\Rooms {#2770}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#4149
-id: 2067
-room: App\Entity\Rooms {#2770}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#4148
-id: 2068
-room: App\Entity\Rooms {#2770}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#4147
-id: 3069
-room: App\Entity\Rooms {#2770}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#4146
-id: 3070
-room: App\Entity\Rooms {#2770}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:6 [ …6]
-owner: App\Entity\Rooms {#2770}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2763
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2764
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666be63717792054510894.jpeg"
-gallery: App\Entity\Galleries {#2814
-id: 105
-hotel: null
-room: App\Entity\Rooms {#2770}
-images: Doctrine\ORM\PersistentCollection {#2492
#collection: Doctrine\Common\Collections\ArrayCollection {#2748
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2814}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Westin suite bien etre"
}
-mediaDirSlug: "95"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "suite-bien-etre"
}
5 => App\Entity\Rooms {#2900
-id: 96
-name: "Banyan Suite"
-description: "Les Bayan Suites sont orientées vers l'océan. Elles disposent d'un lit double, d'une salle de bain avec cabine de douche et baignoire, d'un salon séparé et d'un balcon ou d'une terrasse. En réservant cette suite, bénéficiez des avantages "Club" de l'hôtel et de l'accès au Executive Club Lounge."
-active: true
-hotel: App\Entity\Hotels {#1190}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#11886
-elements: array:1 [
0 => App\Entity\RoomPrices {#2865
-id: 1637
-title: "Banyan Suite - Shoulder Season"
-room: App\Entity\Rooms {#2900}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736510400 {#1308
date: 2025-01-10 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743768000 {#2752
date: 2025-04-04 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2908
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2906
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "935.00"
-singleOccupancy: "915.00"
-tripleOccupancy: "75.00"
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: null
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2894
#collection: Doctrine\Common\Collections\ArrayCollection {#2887
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2900}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2881
#collection: Doctrine\Common\Collections\ArrayCollection {#2875
-elements: array:10 [
0 => App\Entity\RoomCapacities {#4145
-id: 2069
-room: App\Entity\Rooms {#2900}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#4152
-id: 2070
-room: App\Entity\Rooms {#2900}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#4153
-id: 2071
-room: App\Entity\Rooms {#2900}
-adults: 3
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#4170
-id: 2072
-room: App\Entity\Rooms {#2900}
-adults: 3
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#4168
-id: 2073
-room: App\Entity\Rooms {#2900}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#4169
-id: 2074
-room: App\Entity\Rooms {#2900}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#4166
-id: 2075
-room: App\Entity\Rooms {#2900}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#4167
-id: 2076
-room: App\Entity\Rooms {#2900}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#4164
-id: 2077
-room: App\Entity\Rooms {#2900}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#4165
-id: 2078
-room: App\Entity\Rooms {#2900}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:10 [ …10]
-owner: App\Entity\Rooms {#2900}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2664
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2749
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666be66ea6b61120955048.jpeg"
-gallery: App\Entity\Galleries {#2864
-id: 7
-hotel: null
-room: App\Entity\Rooms {#2900}
-images: Doctrine\ORM\PersistentCollection {#2863
#collection: Doctrine\Common\Collections\ArrayCollection {#2862
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2864}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "The Westin Banyan suite"
}
-mediaDirSlug: "96"
-lowerRoomPrice: null
-services: null
-slug: "banyan-suite"
}
6 => App\Entity\Rooms {#2855
-id: 97
-name: "Suite Front de mer"
-description: "Les Beachfront Suites sont orientées vers l'océan. Elles disposent d'un lit double, d'une salle de bain avec cabine de douche et baignoire, d'un salon séparé équipé d'un canapé-lit, d'un espace repas et d'une grande terrasse. En réservant cette suite, bénéficiez des avantages et de l'accès au Executive Club Lounge."
-active: true
-hotel: App\Entity\Hotels {#1190}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#11907
-elements: array:1 [
0 => App\Entity\RoomPrices {#2909
-id: 1647
-title: "Suite Front de mer - Shoulder Season"
-room: App\Entity\Rooms {#2855}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736510400 {#2859
date: 2025-01-10 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743768000 {#2858
date: 2025-04-04 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2857
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2856
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "1200.00"
-singleOccupancy: "1180.00"
-tripleOccupancy: "75.00"
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: null
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2854
#collection: Doctrine\Common\Collections\ArrayCollection {#2853
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2855}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2852
#collection: Doctrine\Common\Collections\ArrayCollection {#2851
-elements: array:11 [
0 => App\Entity\RoomCapacities {#4162
-id: 1638
-room: App\Entity\Rooms {#2855}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#4163
-id: 2079
-room: App\Entity\Rooms {#2855}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#4160
-id: 2080
-room: App\Entity\Rooms {#2855}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#4161
-id: 2081
-room: App\Entity\Rooms {#2855}
-adults: 3
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#4158
-id: 2082
-room: App\Entity\Rooms {#2855}
-adults: 3
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#4159
-id: 2083
-room: App\Entity\Rooms {#2855}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#4156
-id: 2084
-room: App\Entity\Rooms {#2855}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#4157
-id: 2085
-room: App\Entity\Rooms {#2855}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#4154
-id: 2086
-room: App\Entity\Rooms {#2855}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#4173
-id: 2087
-room: App\Entity\Rooms {#2855}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#4174
-id: 2088
-room: App\Entity\Rooms {#2855}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:11 [ …11]
-owner: App\Entity\Rooms {#2855}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2861
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2860
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666be6ada4789910694686.jpeg"
-gallery: App\Entity\Galleries {#2907
-id: 6
-hotel: null
-room: App\Entity\Rooms {#2855}
-images: Doctrine\ORM\PersistentCollection {#2866
#collection: Doctrine\Common\Collections\ArrayCollection {#2905
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2907}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "The Westin Suite front de mer"
}
-mediaDirSlug: "97"
-lowerRoomPrice: null
-services: null
-slug: "suite-front-de-mer"
}
]
}
#initialized: true
-snapshot: array:7 [ …7]
-owner: App\Entity\Hotels {#1190}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#880 …}
-backRefFieldName: "hotel"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-address: "Baie Aux Tortues, Balaclava, Île Maurice"
-checkInTime: "14:00"
-checkOutTime: "11:00"
-babyAgeMax: "3"
-childAgeMax: "13"
-teenAgeMax: "16"
-extraCharges: Doctrine\ORM\PersistentCollection {#1193
#collection: Doctrine\Common\Collections\ArrayCollection {#1194
-elements: array:7 [
0 => App\Entity\ExtraCharges {#11957
-id: 60
-title: "Déjeuner"
-description: null
-adultExtra: 40.0
-babyExtra: null
-childExtra: null
-teenExtra: 40.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1190}
}
1 => App\Entity\ExtraCharges {#11954
-id: 61
-title: "Tout compris"
-description: null
-adultExtra: 80.0
-babyExtra: null
-childExtra: null
-teenExtra: 80.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1190}
}
2 => App\Entity\ExtraCharges {#11956
-id: 64
-title: "Par Enfant (3-12 ans) chambre seul Déjeuner"
-description: null
-adultExtra: 20.0
-babyExtra: null
-childExtra: 20.0
-teenExtra: null
-stayStartedAt: null
-stayEndedAt: null
-isActive: false
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1190}
}
3 => App\Entity\ExtraCharges {#11962
-id: 66
-title: "Dîner"
-description: null
-adultExtra: 25.0
-babyExtra: null
-childExtra: null
-teenExtra: null
-stayStartedAt: null
-stayEndedAt: null
-isActive: false
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1190}
}
4 => App\Entity\ExtraCharges {#11966
-id: 67
-title: "Suppléments repas de Noêl"
-description: null
-adultExtra: 100.0
-babyExtra: null
-childExtra: 45.0
-teenExtra: null
-stayStartedAt: DateTimeImmutable @1734998400 {#11964
date: 2024-12-24 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1735084800 {#11965
date: 2024-12-25 00:00:00.0 UTC (+00:00)
}
-isActive: false
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1190}
}
5 => App\Entity\ExtraCharges {#11969
-id: 68
-title: "Suppléments repas Nouvel An"
-description: null
-adultExtra: 125.0
-babyExtra: null
-childExtra: 65.0
-teenExtra: null
-stayStartedAt: DateTimeImmutable @1735603200 {#11967
date: 2024-12-31 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1735689600 {#11968
date: 2025-01-01 00:00:00.0 UTC (+00:00)
}
-isActive: false
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1190}
}
6 => App\Entity\ExtraCharges {#11970
-id: 178
-title: "Base Demi pension"
-description: null
-adultExtra: 0.0
-babyExtra: null
-childExtra: null
-teenExtra: null
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: true
-minNights: null
-hotel: App\Entity\Hotels {#1190}
}
]
}
#initialized: true
-snapshot: array:7 [ …7]
-owner: App\Entity\Hotels {#1190}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#876 …}
-backRefFieldName: "hotel"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-imageFile: null
-featuredImage: "66965eb3699ce260295750.jpeg"
-gallery: App\Entity\Galleries {#1197
-id: 4
-hotel: App\Entity\Hotels {#1190}
-room: null
-images: Doctrine\ORM\PersistentCollection {#1198
#collection: Doctrine\Common\Collections\ArrayCollection {#1199
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1197}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "The Westin Turtle Bay Resort & Spa"
}
-mediaDirSlug: null
-offers: Doctrine\Common\Collections\ArrayCollection {#12175}
-highlighted: null
-services: null
-hlStartAt: null
-hlEndAt: null
-slug: "the-westin-turtle-bay-resort-spa"
}
-description: null
-stayStartAt: DateTimeImmutable @1717200000 {#12057
date: 2024-06-01 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1761868800 {#12011
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1720742400 {#12056
date: 2024-07-12 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1761868800 {#12062
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-reference: "EBO"
-minNights: 3
-maxNights: null
-earlyBookingDays: 30
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#12065
#collection: Doctrine\Common\Collections\ArrayCollection {#12066
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12064}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1075 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 20
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#12067
#collection: Doctrine\Common\Collections\ArrayCollection {#12068
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12064}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1081 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-offers: Doctrine\ORM\PersistentCollection {#12069
#collection: Doctrine\Common\Collections\ArrayCollection {#12070
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12064}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1085 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#12071
#collection: Doctrine\Common\Collections\ArrayCollection {#12072
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12064}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1087 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#12073
#collection: Doctrine\Common\Collections\ArrayCollection {#12074
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12064}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1093 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-extrasDiscount: null
-priority: 2
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
1 => App\Entity\Offers {#12079
-id: 110
-title: "LONG STAY THE WESTIN"
-type: "LongStay"
-hotel: App\Entity\Hotels {#1190}
-description: null
-stayStartAt: DateTimeImmutable @1717200000 {#12075
date: 2024-06-01 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1761868800 {#12076
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1717200000 {#12077
date: 2024-06-01 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1761868800 {#12078
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-reference: null
-minNights: 14
-maxNights: null
-earlyBookingDays: null
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#12080
#collection: Doctrine\Common\Collections\ArrayCollection {#12081
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12079}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1075 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 10
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#12082
#collection: Doctrine\Common\Collections\ArrayCollection {#12083
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12079}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1081 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-offers: Doctrine\ORM\PersistentCollection {#12084
#collection: Doctrine\Common\Collections\ArrayCollection {#12085
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12079}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1085 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#12086
#collection: Doctrine\Common\Collections\ArrayCollection {#12087
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12079}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1087 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#12088
#collection: Doctrine\Common\Collections\ArrayCollection {#12089
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12079}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1093 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-extrasDiscount: null
-priority: 2
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
2 => App\Entity\Offers {#12094
-id: 187
-title: "WINTER CAMPAIGN 2025"
-type: "Special"
-hotel: App\Entity\Hotels {#1190}
-description: null
-stayStartAt: DateTimeImmutable @1739232000 {#12090
date: 2025-02-11 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1743724800 {#12091
date: 2025-04-04 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1733011200 {#12092
date: 2024-12-01 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1743379200 {#12093
date: 2025-03-31 00:00:00.0 UTC (+00:00)
}
-reference: "WINTER CAMPAIGN 2025"
-minNights: null
-maxNights: null
-earlyBookingDays: null
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#12095
#collection: Doctrine\Common\Collections\ArrayCollection {#12096
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12094}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1075 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 40
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#12097
#collection: Doctrine\Common\Collections\ArrayCollection {#12098
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12094}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1081 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-offers: Doctrine\ORM\PersistentCollection {#12099
#collection: Doctrine\Common\Collections\ArrayCollection {#12100
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12094}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1085 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#12101
#collection: Doctrine\Common\Collections\ArrayCollection {#12102
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12094}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1087 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#12103
#collection: Doctrine\Common\Collections\ArrayCollection {#12104
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12094}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1093 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-extrasDiscount: null
-priority: 1
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
]
}
1 in
PromotionDTO.php
line 546:
// if booking not respect the interval skip this offer - format('%a') return a string of the diff days, need to convert to integer value
if (intval($booking_interval->format('%a')) < $offer_earlybookingDays) {
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle() . '(nb jours: ' . $offer_earlybookingDays . ')', 'Early booking date interval failure. (début séjour dans '.$booking_interval->format('%a').' jours.)');
}
return $this;
}
"3 - EBO THE WESTIN(nb jours: 30)"
2 in
PromotionDTO.php
line 546:
// if booking not respect the interval skip this offer - format('%a') return a string of the diff days, need to convert to integer value
if (intval($booking_interval->format('%a')) < $offer_earlybookingDays) {
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle() . '(nb jours: ' . $offer_earlybookingDays . ')', 'Early booking date interval failure. (début séjour dans '.$booking_interval->format('%a').' jours.)');
}
return $this;
}
"Early booking date interval failure. (début séjour dans 27 jours.)"
1 in
PromotionDTO.php
line 556:
if ($offer_min_nights) {
if($stay_nights < $offer_min_nights){
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle(), 'Min nights failure.');
}
return $this;
}
"110 - LONG STAY THE WESTIN"
2 in
PromotionDTO.php
line 556:
if ($offer_min_nights) {
if($stay_nights < $offer_min_nights){
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle(), 'Min nights failure.');
}
return $this;
}
"Min nights failure."
1 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
"Step 1. Offres valides : "
2 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
array:1 [
0 => App\DTO\PromotionDTO {#12303
-debug: true
+id: 187
+title: "WINTER CAMPAIGN 2025"
+description: null
+type: "Special"
+reference: "WINTER CAMPAIGN 2025"
+from: DateTimeImmutable @1739232000 {#12090
date: 2025-02-11 00:00:00.0 UTC (+00:00)
}
+to: DateTimeImmutable @1743724800 {#12091
date: 2025-04-04 00:00:00.0 UTC (+00:00)
}
+earlyBookingDays: null
+minNights: null
+maxNights: null
+discountRate: 40
+discountFamilyRates: []
+combinableRate: null
+priority: 1
+extrasDiscountRate: null
+isAllRooms: true
+isCombinable: false
+selectedRoomsIDs: []
+selectedExtrasIDs: []
+selectedOffersIDs: []
+selectedExtrasDiscountIDs: []
}
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Le Meridien - Chambre : #98 - Junior Suite has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#12557
+rpId: 1722
+adultsPrice: 480
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Le Meridien - Chambre : #99 - Ocean Sky Junior Suite has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#12578
+rpId: 1732
+adultsPrice: 515
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 515
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 515
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 515
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 515
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Le Meridien - Chambre : #100 - Beach Bliss Junior Suite has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#12599
+rpId: 1742
+adultsPrice: 550
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 550
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 550
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 550
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 550
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Le Meridien - Chambre : #101 - Family Suite Front de mer has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#12620
+rpId: 1752
+adultsPrice: 570
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Le Meridien - Chambre : #102 - Royal Suite has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#12641
+rpId: 1762
+adultsPrice: 890
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 890
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 890
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 890
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 890
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Le Meridien - Chambre : #103 - Nirvana Tranquil Bliss has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#12662
+rpId: 1772
+adultsPrice: 480
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Le Meridien - Chambre : #104 - Romantic Allure has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#12683
+rpId: 1782
+adultsPrice: 570
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Le Meridien - Chambre : #105 - Plunge Pool Hideaway has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#12704
+rpId: 1792
+adultsPrice: 675
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 675
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 675
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 675
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 675
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Le Meridien - Chambre : #106 - Nirvana Grand Suite has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#12725
+rpId: 1802
+adultsPrice: 1080
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1080
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1080
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1080
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1080
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
"Update Stay Rooms - Chambers Prices"
2 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
array:1 [
0 => array:9 [
0 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
"room_id" => 98
"room_picture" => "/uploads/rooms/98/666847647d34f296369245.jpg"
"room_name" => "Junior Suite"
"room_slug" => "junior-suite"
"room_description" => "Nous proposons 72 Suites Junior d'une superficie de 60 m², situées au 1er étage. Chaque suite comprend une chambre avec un lit King Size et un canapé-lit ou deux lits Queen Size, une salle de bain et un balcon offrant une vue sur l'océan ou une vue partielle sur l'océan. La disponibilité de chambres communicantes est soumise à demande (non garantie)."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1722
"adult_amount" => 1920
"children_amount" => 0
"basis_amount" => 1920
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
]
]
]
1 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 99
"room_picture" => "/uploads/rooms/99/666848557a6f0778336300.jpg"
"room_name" => "Ocean Sky Junior Suite"
"room_slug" => "ocean-sky-junior-suite"
"room_description" => "Nous avons 60 Suites Junior Ocean Sky, d'une surface de 60m², situées au 2ème étage. Chacune comprend une chambre avec un lit King Size et un canapé-lit ou deux lits Queen Size, une salle de bain et un balcon offrant une vue sur l'océan."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1732
"adult_amount" => 2060
"children_amount" => 0
"basis_amount" => 2060
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 515
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 515
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 515
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 515
"kids_price" => 0
]
]
]
]
2 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 100
"room_picture" => "/uploads/rooms/100/66684a03d3139802785709.jpeg"
"room_name" => "Beach Bliss Junior Suite"
"room_slug" => "beach-bliss-junior-suite"
"room_description" => "Nous disposons de 48 Suites Junior Beach Bliss, d'une superficie de 60m², situées au rez-de-chaussée offrant un accès direct à la plage. Ces suites sont aménagées avec un lit King Size (ou deux lits Queen Size), une salle de bains semi-ouverte sur la chambre, un coin salon et une terrasse offrant une vue sur l'océan et la piscine."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1742
"adult_amount" => 2200
"children_amount" => 0
"basis_amount" => 2200
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 550
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 550
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 550
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 550
"kids_price" => 0
]
]
]
]
3 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 101
"room_picture" => "/uploads/rooms/101/666935be67105145140374.jpg"
"room_name" => "Family Suite Front de mer"
"room_slug" => "family-suite-front-de-mer"
"room_description" => "Les 24 Suites Famille Front de Mer, d'une superficie de 69 m², offrent un cadre luxueux et spacieux. Chaque suite comprend une chambre élégamment aménagée avec un lit King Size, un coin salon confortable, une salle de bain moderne et une terrasse privée offrant une vue imprenable sur l'océan."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1752
"adult_amount" => 2280
"children_amount" => 0
"basis_amount" => 2280
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
]
]
]
4 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 102
"room_picture" => "/uploads/rooms/102/6669373841912940996954.jpg"
"room_name" => "Royal Suite"
"room_slug" => "royal-suite"
"room_description" => "Les 6 Suites Royales, d'une superficie de 150 m², sont aménagées en duplex à l'étage, offrant une vue spectaculaire sur l'océan. Au premier niveau, vous trouverez une entrée avec dressing, un espace bar-café, un séjour avec plafond cathédrale comprenant un espace repas et salon, ainsi qu'un balcon aménagé. Le second niveau dispose d'un dressing, d'une chambre avec un lit King Size (200x200), d'un espace bureau et d'une salle de bain ouverte."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1762
"adult_amount" => 3560
"children_amount" => 0
"basis_amount" => 3560
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 890
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 890
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 890
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 890
"kids_price" => 0
]
]
]
]
5 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 103
"room_picture" => "/uploads/rooms/103/66693af402245843155624.jpg"
"room_name" => "Nirvana Tranquil Bliss"
"room_slug" => "nirvana-tranquil-bliss"
"room_description" => "Les 18 Chambres Nirvana Tranquil Bliss, d’une superficie de 56 m², sont situées au premier étage de la section Nirvana, réservée aux adultes. Elles offrent un cadre paisible et élégant avec un lit King Size, une salle de bain moderne et un balcon privé avec vue sur le jardin."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1772
"adult_amount" => 1920
"children_amount" => 0
"basis_amount" => 1920
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
]
]
]
6 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 104
"room_picture" => "/uploads/rooms/104/666939d1c5436658738912.jpeg"
"room_name" => "Romantic Allure"
"room_slug" => "romantic-allure"
"room_description" => "Les 16 Chambres Nirvana Romantique Allure, d’une superficie de 56 m², sont situées au premier étage de la section Nirvana, réservée aux adultes. Chaque chambre comprend un lit King Size, une salle de bain moderne et un balcon privé offrant une vue imprenable sur l'océan. Les avantages incluent l'accès exclusif à la piscine et à l'espace plage réservés aux clients Nirvana, une bouteille de vin et une assiette de fruits à l'arrivée, le petit-déjeuner en chambre offert (frais de plateau en sus), ainsi que des boissons (thé, café, jus et softs) gratuites tous les jours de 11h00 à 18h00 au Nirvana Pool Bar. De plus, un cocktail accompagné de canapés est servi quotidiennement au coucher du soleil."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1782
"adult_amount" => 2280
"children_amount" => 0
"basis_amount" => 2280
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
]
]
]
7 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 105
"room_picture" => "/uploads/rooms/105/66693ad04398a465174846.jpeg"
"room_name" => "Plunge Pool Hideaway"
"room_slug" => "plunge-pool-hideaway"
"room_description" => "Les 16 Chambres Nirvana avec Plunge Pool, d'une superficie de 112 m², sont situées au rez-de-chaussée et orientées vers les jardins, avec un accès côté océan. Elles comprennent une chambre avec un lit King Size (200x200), un salon confortable, une salle de bain semi-ouverte sur la chambre, et une terrasse arrière avec une plunge pool. Les plantes tropicales autour de la plunge pool préservent votre intimité, bien qu'il soit possible de voir et d'être légèrement vu par les passants des autres suites Nirvana."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1792
"adult_amount" => 2700
"children_amount" => 0
"basis_amount" => 2700
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 675
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 675
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 675
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 675
"kids_price" => 0
]
]
]
]
8 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 106
"room_picture" => "/uploads/rooms/106/66693cd910286572902604.jpeg"
"room_name" => "Nirvana Grand Suite"
"room_slug" => "nirvana-grand-suite"
"room_description" => "La Nirvana Grand Suite, répartie sur deux niveaux, offre à l'étage une chambre élégante équipée d'un lit double et d'une salle de bain lumineuse avec une douche à l’italienne et une baignoire. Le rez-de-chaussée dispose d'un salon spacieux, d'une belle salle à manger et d'un bar. La suite s'étend également sur une terrasse privée."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1802
"adult_amount" => 4320
"children_amount" => 0
"basis_amount" => 4320
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1080
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1080
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1080
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1080
"kids_price" => 0
]
]
]
]
]
]
1 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
"Update Stay Rooms results"
2 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
array:9 [
0 => App\DTO\RoomStayDTO {#11972
-marginRate: 20
-id: 98
-name: "Junior Suite"
-slug: "junior-suite"
-picture: "/uploads/rooms/98/666847647d34f296369245.jpg"
-description: "Nous proposons 72 Suites Junior d'une superficie de 60 m², situées au 1er étage. Chaque suite comprend une chambre avec un lit King Size et un canapé-lit ou deux lits Queen Size, une salle de bain et un balcon offrant une vue sur l'océan ou une vue partielle sur l'océan. La disponibilité de chambres communicantes est soumise à demande (non garantie)."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 199
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
]
"amount" => 1920
]
]
-totalRoomAmount: 1920.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#12748
-marginRate: 20
+extraId: 199
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1920.0
+totalStayAmountWoDiscount: 1920.0
+totalStayAmount: 1920.0
+finalAmountWoDiscount: 2304.0
+finalAmount: 2304.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#12751
-marginRate: 20
+extraId: 69
+name: "Suppléments repas Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 80
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 320
+kidsExtrasAmount: 0
+stayExtrasAmount: 320
+stayRoomAmount: 1920.0
+totalStayAmountWoDiscount: 2240.0
+totalStayAmount: 2240.0
+finalAmountWoDiscount: 2688.0
+finalAmount: 2688.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#12758
-marginRate: 20
+extraId: 70
+name: "Suppléments repas All Inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 1920.0
+totalStayAmountWoDiscount: 2560.0
+totalStayAmount: 2560.0
+finalAmountWoDiscount: 3072.0
+finalAmount: 3072.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
1 => App\DTO\RoomStayDTO {#12700
-marginRate: 20
-id: 99
-name: "Ocean Sky Junior Suite"
-slug: "ocean-sky-junior-suite"
-picture: "/uploads/rooms/99/666848557a6f0778336300.jpg"
-description: "Nous avons 60 Suites Junior Ocean Sky, d'une surface de 60m², situées au 2ème étage. Chacune comprend une chambre avec un lit King Size et un canapé-lit ou deux lits Queen Size, une salle de bain et un balcon offrant une vue sur l'océan."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 199
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 515
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 515
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 515
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 515
"kids_price" => 0
]
]
"amount" => 2060
]
]
-totalRoomAmount: 2060.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#12759
-marginRate: 20
+extraId: 199
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2060.0
+totalStayAmountWoDiscount: 2060.0
+totalStayAmount: 2060.0
+finalAmountWoDiscount: 2472.0
+finalAmount: 2472.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#12760
-marginRate: 20
+extraId: 69
+name: "Suppléments repas Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 80
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 320
+kidsExtrasAmount: 0
+stayExtrasAmount: 320
+stayRoomAmount: 2060.0
+totalStayAmountWoDiscount: 2380.0
+totalStayAmount: 2380.0
+finalAmountWoDiscount: 2856.0
+finalAmount: 2856.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#12761
-marginRate: 20
+extraId: 70
+name: "Suppléments repas All Inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 2060.0
+totalStayAmountWoDiscount: 2700.0
+totalStayAmount: 2700.0
+finalAmountWoDiscount: 3240.0
+finalAmount: 3240.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
2 => App\DTO\RoomStayDTO {#12721
-marginRate: 20
-id: 100
-name: "Beach Bliss Junior Suite"
-slug: "beach-bliss-junior-suite"
-picture: "/uploads/rooms/100/66684a03d3139802785709.jpeg"
-description: "Nous disposons de 48 Suites Junior Beach Bliss, d'une superficie de 60m², situées au rez-de-chaussée offrant un accès direct à la plage. Ces suites sont aménagées avec un lit King Size (ou deux lits Queen Size), une salle de bains semi-ouverte sur la chambre, un coin salon et une terrasse offrant une vue sur l'océan et la piscine."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 199
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 550
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 550
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 550
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 550
"kids_price" => 0
]
]
"amount" => 2200
]
]
-totalRoomAmount: 2200.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#12762
-marginRate: 20
+extraId: 199
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2200.0
+totalStayAmountWoDiscount: 2200.0
+totalStayAmount: 2200.0
+finalAmountWoDiscount: 2640.0
+finalAmount: 2640.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#12763
-marginRate: 20
+extraId: 69
+name: "Suppléments repas Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 80
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 320
+kidsExtrasAmount: 0
+stayExtrasAmount: 320
+stayRoomAmount: 2200.0
+totalStayAmountWoDiscount: 2520.0
+totalStayAmount: 2520.0
+finalAmountWoDiscount: 3024.0
+finalAmount: 3024.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#12764
-marginRate: 20
+extraId: 70
+name: "Suppléments repas All Inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 2200.0
+totalStayAmountWoDiscount: 2840.0
+totalStayAmount: 2840.0
+finalAmountWoDiscount: 3408.0
+finalAmount: 3408.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
3 => App\DTO\RoomStayDTO {#12720
-marginRate: 20
-id: 101
-name: "Family Suite Front de mer"
-slug: "family-suite-front-de-mer"
-picture: "/uploads/rooms/101/666935be67105145140374.jpg"
-description: "Les 24 Suites Famille Front de Mer, d'une superficie de 69 m², offrent un cadre luxueux et spacieux. Chaque suite comprend une chambre élégamment aménagée avec un lit King Size, un coin salon confortable, une salle de bain moderne et une terrasse privée offrant une vue imprenable sur l'océan."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 199
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
]
"amount" => 2280
]
]
-totalRoomAmount: 2280.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#12765
-marginRate: 20
+extraId: 199
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2280.0
+totalStayAmountWoDiscount: 2280.0
+totalStayAmount: 2280.0
+finalAmountWoDiscount: 2736.0
+finalAmount: 2736.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#12766
-marginRate: 20
+extraId: 69
+name: "Suppléments repas Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 80
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 320
+kidsExtrasAmount: 0
+stayExtrasAmount: 320
+stayRoomAmount: 2280.0
+totalStayAmountWoDiscount: 2600.0
+totalStayAmount: 2600.0
+finalAmountWoDiscount: 3120.0
+finalAmount: 3120.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#12767
-marginRate: 20
+extraId: 70
+name: "Suppléments repas All Inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 2280.0
+totalStayAmountWoDiscount: 2920.0
+totalStayAmount: 2920.0
+finalAmountWoDiscount: 3504.0
+finalAmount: 3504.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
4 => App\DTO\RoomStayDTO {#12698
-marginRate: 20
-id: 102
-name: "Royal Suite"
-slug: "royal-suite"
-picture: "/uploads/rooms/102/6669373841912940996954.jpg"
-description: "Les 6 Suites Royales, d'une superficie de 150 m², sont aménagées en duplex à l'étage, offrant une vue spectaculaire sur l'océan. Au premier niveau, vous trouverez une entrée avec dressing, un espace bar-café, un séjour avec plafond cathédrale comprenant un espace repas et salon, ainsi qu'un balcon aménagé. Le second niveau dispose d'un dressing, d'une chambre avec un lit King Size (200x200), d'un espace bureau et d'une salle de bain ouverte."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 199
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 890
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 890
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 890
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 890
"kids_price" => 0
]
]
"amount" => 3560
]
]
-totalRoomAmount: 3560.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#12768
-marginRate: 20
+extraId: 199
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 3560.0
+totalStayAmountWoDiscount: 3560.0
+totalStayAmount: 3560.0
+finalAmountWoDiscount: 4272.0
+finalAmount: 4272.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#12769
-marginRate: 20
+extraId: 69
+name: "Suppléments repas Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 80
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 320
+kidsExtrasAmount: 0
+stayExtrasAmount: 320
+stayRoomAmount: 3560.0
+totalStayAmountWoDiscount: 3880.0
+totalStayAmount: 3880.0
+finalAmountWoDiscount: 4656.0
+finalAmount: 4656.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#12770
-marginRate: 20
+extraId: 70
+name: "Suppléments repas All Inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 3560.0
+totalStayAmountWoDiscount: 4200.0
+totalStayAmount: 4200.0
+finalAmountWoDiscount: 5040.0
+finalAmount: 5040.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
5 => App\DTO\RoomStayDTO {#12739
-marginRate: 20
-id: 103
-name: "Nirvana Tranquil Bliss"
-slug: "nirvana-tranquil-bliss"
-picture: "/uploads/rooms/103/66693af402245843155624.jpg"
-description: "Les 18 Chambres Nirvana Tranquil Bliss, d’une superficie de 56 m², sont situées au premier étage de la section Nirvana, réservée aux adultes. Elles offrent un cadre paisible et élégant avec un lit King Size, une salle de bain moderne et un balcon privé avec vue sur le jardin."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 199
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 480
"kids_price" => 0
]
]
"amount" => 1920
]
]
-totalRoomAmount: 1920.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#12771
-marginRate: 20
+extraId: 199
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1920.0
+totalStayAmountWoDiscount: 1920.0
+totalStayAmount: 1920.0
+finalAmountWoDiscount: 2304.0
+finalAmount: 2304.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#12772
-marginRate: 20
+extraId: 69
+name: "Suppléments repas Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 80
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 320
+kidsExtrasAmount: 0
+stayExtrasAmount: 320
+stayRoomAmount: 1920.0
+totalStayAmountWoDiscount: 2240.0
+totalStayAmount: 2240.0
+finalAmountWoDiscount: 2688.0
+finalAmount: 2688.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#12773
-marginRate: 20
+extraId: 70
+name: "Suppléments repas All Inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 1920.0
+totalStayAmountWoDiscount: 2560.0
+totalStayAmount: 2560.0
+finalAmountWoDiscount: 3072.0
+finalAmount: 3072.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
6 => App\DTO\RoomStayDTO {#12714
-marginRate: 20
-id: 104
-name: "Romantic Allure"
-slug: "romantic-allure"
-picture: "/uploads/rooms/104/666939d1c5436658738912.jpeg"
-description: "Les 16 Chambres Nirvana Romantique Allure, d’une superficie de 56 m², sont situées au premier étage de la section Nirvana, réservée aux adultes. Chaque chambre comprend un lit King Size, une salle de bain moderne et un balcon privé offrant une vue imprenable sur l'océan. Les avantages incluent l'accès exclusif à la piscine et à l'espace plage réservés aux clients Nirvana, une bouteille de vin et une assiette de fruits à l'arrivée, le petit-déjeuner en chambre offert (frais de plateau en sus), ainsi que des boissons (thé, café, jus et softs) gratuites tous les jours de 11h00 à 18h00 au Nirvana Pool Bar. De plus, un cocktail accompagné de canapés est servi quotidiennement au coucher du soleil."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 199
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 570
"kids_price" => 0
]
]
"amount" => 2280
]
]
-totalRoomAmount: 2280.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#12774
-marginRate: 20
+extraId: 199
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2280.0
+totalStayAmountWoDiscount: 2280.0
+totalStayAmount: 2280.0
+finalAmountWoDiscount: 2736.0
+finalAmount: 2736.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#12775
-marginRate: 20
+extraId: 69
+name: "Suppléments repas Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 80
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 320
+kidsExtrasAmount: 0
+stayExtrasAmount: 320
+stayRoomAmount: 2280.0
+totalStayAmountWoDiscount: 2600.0
+totalStayAmount: 2600.0
+finalAmountWoDiscount: 3120.0
+finalAmount: 3120.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#12776
-marginRate: 20
+extraId: 70
+name: "Suppléments repas All Inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 2280.0
+totalStayAmountWoDiscount: 2920.0
+totalStayAmount: 2920.0
+finalAmountWoDiscount: 3504.0
+finalAmount: 3504.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
7 => App\DTO\RoomStayDTO {#12737
-marginRate: 20
-id: 105
-name: "Plunge Pool Hideaway"
-slug: "plunge-pool-hideaway"
-picture: "/uploads/rooms/105/66693ad04398a465174846.jpeg"
-description: "Les 16 Chambres Nirvana avec Plunge Pool, d'une superficie de 112 m², sont situées au rez-de-chaussée et orientées vers les jardins, avec un accès côté océan. Elles comprennent une chambre avec un lit King Size (200x200), un salon confortable, une salle de bain semi-ouverte sur la chambre, et une terrasse arrière avec une plunge pool. Les plantes tropicales autour de la plunge pool préservent votre intimité, bien qu'il soit possible de voir et d'être légèrement vu par les passants des autres suites Nirvana."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 199
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 675
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 675
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 675
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 675
"kids_price" => 0
]
]
"amount" => 2700
]
]
-totalRoomAmount: 2700.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#12777
-marginRate: 20
+extraId: 199
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 2700.0
+totalStayAmountWoDiscount: 2700.0
+totalStayAmount: 2700.0
+finalAmountWoDiscount: 3240.0
+finalAmount: 3240.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#12778
-marginRate: 20
+extraId: 69
+name: "Suppléments repas Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 80
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 320
+kidsExtrasAmount: 0
+stayExtrasAmount: 320
+stayRoomAmount: 2700.0
+totalStayAmountWoDiscount: 3020.0
+totalStayAmount: 3020.0
+finalAmountWoDiscount: 3624.0
+finalAmount: 3624.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#12779
-marginRate: 20
+extraId: 70
+name: "Suppléments repas All Inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 2700.0
+totalStayAmountWoDiscount: 3340.0
+totalStayAmount: 3340.0
+finalAmountWoDiscount: 4008.0
+finalAmount: 4008.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
8 => App\DTO\RoomStayDTO {#12740
-marginRate: 20
-id: 106
-name: "Nirvana Grand Suite"
-slug: "nirvana-grand-suite"
-picture: "/uploads/rooms/106/66693cd910286572902604.jpeg"
-description: "La Nirvana Grand Suite, répartie sur deux niveaux, offre à l'étage une chambre élégante équipée d'un lit double et d'une salle de bain lumineuse avec une douche à l’italienne et une baignoire. Le rez-de-chaussée dispose d'un salon spacieux, d'une belle salle à manger et d'un bar. La suite s'étend également sur une terrasse privée."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 199
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 1080
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 1080
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 1080
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 1080
"kids_price" => 0
]
]
"amount" => 4320
]
]
-totalRoomAmount: 4320.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#12780
-marginRate: 20
+extraId: 199
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 4320.0
+totalStayAmountWoDiscount: 4320.0
+totalStayAmount: 4320.0
+finalAmountWoDiscount: 5184.0
+finalAmount: 5184.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#12781
-marginRate: 20
+extraId: 69
+name: "Suppléments repas Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 80
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 320
+kidsExtrasAmount: 0
+stayExtrasAmount: 320
+stayRoomAmount: 4320.0
+totalStayAmountWoDiscount: 4640.0
+totalStayAmount: 4640.0
+finalAmountWoDiscount: 5568.0
+finalAmount: 5568.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#12782
-marginRate: 20
+extraId: 70
+name: "Suppléments repas All Inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 4320.0
+totalStayAmountWoDiscount: 4960.0
+totalStayAmount: 4960.0
+finalAmountWoDiscount: 5952.0
+finalAmount: 5952.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
]
1 in
RoomStayCalculation.php
line 274:
{
$offers_eligibled = [];
if ($this->debug) {
dump('All available offers of the hotel', $offers);
}
foreach ($offers as $key => $offer) {
"All available offers of the hotel"
2 in
RoomStayCalculation.php
line 274:
{
$offers_eligibled = [];
if ($this->debug) {
dump('All available offers of the hotel', $offers);
}
foreach ($offers as $key => $offer) {
Doctrine\Common\Collections\ArrayCollection {#12958
-elements: array:3 [
0 => App\Entity\Offers {#12847
-id: 111
-title: "EARLY BOOKING LE MERIDIEN"
-type: "EarlyBooking"
-hotel: App\Entity\Hotels {#1204
-id: 17
-name: "Le Meridien"
-description: "Niché près d’une plage de sable blond d’un kilomètre de long, Le Méridien Ile Maurice a été récemment rénové dans un ultime objectif : vous permettre de faire de nouvelles découvertes. Dans cet hôtel de luxe familial né à la grande époque des voyages glamour s'expriment aujourd'hui la joie et l'animation de la vie mauricienne. Œuvres d’art locales dans le hall, éveil des sens au Waves (sans oublier nos trois autres restaurants)… Ici, l’inspiration tropicale est omniprésente. Notre resort offre 261 chambres élégamment réparties le long de la plage, pour un sentiment d’espace et de détente à nul autre pareil. Quelle que soit votre chambre, vous bénéficierez d'un panorama à couper le souffle sur l'océan Indien depuis votre balcon privé d'où vous pourrez admirer chaque soir un merveilleux coucher de soleil. Celles et ceux qui recherchent un environnement plus calme et plus intimiste seront ravis de découvrir Nirvana, la partie de notre resort exclusivement réservée aux adultes. Le Méridien Ile Maurice est un resort tropical d'un genre nouveau, où l'inspiration règne en maître."
-website: "https://www.marriott.com/en-us/hotels/mrumd-le-meridien-ile-maurice/overview/"
-stars: 5
-youtubeVideoId: "wEyxPgm9EuA"
-phone: "+230 204 3333"
-email: "booking@meridienmauritius.com"
-active: true
-gmapUrl: "<iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3747.517155527106!2d57.513643812172106!3d-20.070657381271943!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x217c50517c53d557%3A0xf06f8cc91368ea17!2sLe%20Meridien%20Ile%20Maurice!5e0!3m2!1sfr!2sfr!4v1718969352572!5m2!1sfr!2sfr" width="100%" height="600" style="border:0;" allowfullscreen="" loading="lazy" referrerpolicy="no-referrer-when-downgrade"></iframe>"
-zone: "Nord-Ouest"
-createdAt: DateTimeImmutable @1714145854 {#1200
date: 2024-04-26 15:37:34.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672825 {#1201
date: 2024-10-23 08:40:25.0 UTC (+00:00)
}
-rooms: Doctrine\ORM\PersistentCollection {#1205
#collection: Doctrine\Common\Collections\ArrayCollection {#1206
-elements: array:9 [
0 => App\Entity\Rooms {#2965
-id: 98
-name: "Junior Suite"
-description: "Nous proposons 72 Suites Junior d'une superficie de 60 m², situées au 1er étage. Chaque suite comprend une chambre avec un lit King Size et un canapé-lit ou deux lits Queen Size, une salle de bain et un balcon offrant une vue sur l'océan ou une vue partielle sur l'océan. La disponibilité de chambres communicantes est soumise à demande (non garantie)."
-active: true
-hotel: App\Entity\Hotels {#1204}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#12549
-elements: array:1 [
0 => App\Entity\RoomPrices {#2958
-id: 1722
-title: "Le Meridien - Suite - Shoulder Season"
-room: App\Entity\Rooms {#2965}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736510400 {#2969
date: 2025-01-10 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743768000 {#2968
date: 2025-04-04 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2967
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2966
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "480.00"
-singleOccupancy: "460.00"
-tripleOccupancy: "75.00"
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 75.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2964
#collection: Doctrine\Common\Collections\ArrayCollection {#2963
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2965}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2962
#collection: Doctrine\Common\Collections\ArrayCollection {#2961
-elements: array:14 [
0 => App\Entity\RoomCapacities {#4204
-id: 2307
-room: App\Entity\Rooms {#2965}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#4203
-id: 2308
-room: App\Entity\Rooms {#2965}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#4202
-id: 2309
-room: App\Entity\Rooms {#2965}
-adults: 3
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#4201
-id: 2310
-room: App\Entity\Rooms {#2965}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#4200
-id: 2311
-room: App\Entity\Rooms {#2965}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#4199
-id: 2312
-room: App\Entity\Rooms {#2965}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#4198
-id: 2313
-room: App\Entity\Rooms {#2965}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#4197
-id: 2314
-room: App\Entity\Rooms {#2965}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#4196
-id: 2315
-room: App\Entity\Rooms {#2965}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#4195
-id: 2316
-room: App\Entity\Rooms {#2965}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#4194
-id: 2317
-room: App\Entity\Rooms {#2965}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#4193
-id: 2318
-room: App\Entity\Rooms {#2965}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#4192
-id: 2319
-room: App\Entity\Rooms {#2965}
-adults: 2
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#4191
-id: 2320
-room: App\Entity\Rooms {#2965}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:14 [ …14]
-owner: App\Entity\Rooms {#2965}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2893
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2898
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666847647d34f296369245.jpg"
-gallery: App\Entity\Galleries {#2957
-id: 133
-hotel: null
-room: App\Entity\Rooms {#2965}
-images: Doctrine\ORM\PersistentCollection {#2956
#collection: Doctrine\Common\Collections\ArrayCollection {#2955
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2957}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Meridien suite junior"
}
-mediaDirSlug: "98"
-lowerRoomPrice: null
-services: null
-slug: "junior-suite"
}
1 => App\Entity\Rooms {#2948
-id: 99
-name: "Ocean Sky Junior Suite"
-description: "Nous avons 60 Suites Junior Ocean Sky, d'une surface de 60m², situées au 2ème étage. Chacune comprend une chambre avec un lit King Size et un canapé-lit ou deux lits Queen Size, une salle de bain et un balcon offrant une vue sur l'océan."
-active: true
-hotel: App\Entity\Hotels {#1204}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#11973
-elements: array:1 [
0 => App\Entity\RoomPrices {#2941
-id: 1732
-title: "Le Meridien - Ocean Sky Junior Suite - Shoulder Season"
-room: App\Entity\Rooms {#2948}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736510400 {#2952
date: 2025-01-10 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743768000 {#2951
date: 2025-04-04 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2950
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2949
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "515.00"
-singleOccupancy: "495.00"
-tripleOccupancy: "75.00"
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 75.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2947
#collection: Doctrine\Common\Collections\ArrayCollection {#2946
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2948}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2945
#collection: Doctrine\Common\Collections\ArrayCollection {#2944
-elements: array:14 [
0 => App\Entity\RoomCapacities {#4190
-id: 2321
-room: App\Entity\Rooms {#2948}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#4189
-id: 2322
-room: App\Entity\Rooms {#2948}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#4188
-id: 2323
-room: App\Entity\Rooms {#2948}
-adults: 3
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#4187
-id: 2324
-room: App\Entity\Rooms {#2948}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#4186
-id: 2325
-room: App\Entity\Rooms {#2948}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#4185
-id: 2326
-room: App\Entity\Rooms {#2948}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#4184
-id: 2327
-room: App\Entity\Rooms {#2948}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#4182
-id: 2328
-room: App\Entity\Rooms {#2948}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#4181
-id: 2329
-room: App\Entity\Rooms {#2948}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#4180
-id: 2330
-room: App\Entity\Rooms {#2948}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#4179
-id: 2331
-room: App\Entity\Rooms {#2948}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#4178
-id: 2332
-room: App\Entity\Rooms {#2948}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#4177
-id: 2333
-room: App\Entity\Rooms {#2948}
-adults: 2
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#4175
-id: 2334
-room: App\Entity\Rooms {#2948}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:14 [ …14]
-owner: App\Entity\Rooms {#2948}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2954
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2953
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666848557a6f0778336300.jpg"
-gallery: App\Entity\Galleries {#2940
-id: 134
-hotel: null
-room: App\Entity\Rooms {#2948}
-images: Doctrine\ORM\PersistentCollection {#2939
#collection: Doctrine\Common\Collections\ArrayCollection {#2938
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2940}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Meridien ocean sky junior suite"
}
-mediaDirSlug: "99"
-lowerRoomPrice: null
-services: null
-slug: "ocean-sky-junior-suite"
}
2 => App\Entity\Rooms {#2931
-id: 100
-name: "Beach Bliss Junior Suite"
-description: "Nous disposons de 48 Suites Junior Beach Bliss, d'une superficie de 60m², situées au rez-de-chaussée offrant un accès direct à la plage. Ces suites sont aménagées avec un lit King Size (ou deux lits Queen Size), une salle de bains semi-ouverte sur la chambre, un coin salon et une terrasse offrant une vue sur l'océan et la piscine."
-active: true
-hotel: App\Entity\Hotels {#1204}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#12567
-elements: array:1 [
0 => App\Entity\RoomPrices {#2924
-id: 1742
-title: "Le Meridien -Beach Bliss Junior Suite - Shoulder Season"
-room: App\Entity\Rooms {#2931}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736510400 {#2935
date: 2025-01-10 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743768000 {#2934
date: 2025-04-04 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2933
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2932
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "550.00"
-singleOccupancy: "530.00"
-tripleOccupancy: "75.00"
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 75.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2930
#collection: Doctrine\Common\Collections\ArrayCollection {#2929
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2931}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2928
#collection: Doctrine\Common\Collections\ArrayCollection {#2927
-elements: array:14 [
0 => App\Entity\RoomCapacities {#4138
-id: 2335
-room: App\Entity\Rooms {#2931}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#4139
-id: 2336
-room: App\Entity\Rooms {#2931}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#4064
-id: 2337
-room: App\Entity\Rooms {#2931}
-adults: 3
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#4062
-id: 2338
-room: App\Entity\Rooms {#2931}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#4144
-id: 2339
-room: App\Entity\Rooms {#2931}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#4222
-id: 2340
-room: App\Entity\Rooms {#2931}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#4209
-id: 2341
-room: App\Entity\Rooms {#2931}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#4218
-id: 2342
-room: App\Entity\Rooms {#2931}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#4217
-id: 2343
-room: App\Entity\Rooms {#2931}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#4216
-id: 2344
-room: App\Entity\Rooms {#2931}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#4215
-id: 2345
-room: App\Entity\Rooms {#2931}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#4214
-id: 2346
-room: App\Entity\Rooms {#2931}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#4213
-id: 2347
-room: App\Entity\Rooms {#2931}
-adults: 2
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#4212
-id: 2348
-room: App\Entity\Rooms {#2931}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:14 [ …14]
-owner: App\Entity\Rooms {#2931}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2937
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2936
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "66684a03d3139802785709.jpeg"
-gallery: App\Entity\Galleries {#2923
-id: 135
-hotel: null
-room: App\Entity\Rooms {#2931}
-images: Doctrine\ORM\PersistentCollection {#2922
#collection: Doctrine\Common\Collections\ArrayCollection {#2921
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2923}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Meridien Beach Bliss junior suite"
}
-mediaDirSlug: "100"
-lowerRoomPrice: null
-services: null
-slug: "beach-bliss-junior-suite"
}
3 => App\Entity\Rooms {#2913
-id: 101
-name: "Family Suite Front de mer"
-description: "Les 24 Suites Famille Front de Mer, d'une superficie de 69 m², offrent un cadre luxueux et spacieux. Chaque suite comprend une chambre élégamment aménagée avec un lit King Size, un coin salon confortable, une salle de bain moderne et une terrasse privée offrant une vue imprenable sur l'océan."
-active: true
-hotel: App\Entity\Hotels {#1204}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#12588
-elements: array:1 [
0 => App\Entity\RoomPrices {#2878
-id: 1752
-title: "Le Meridien - Beachfront Family Suite"
-room: App\Entity\Rooms {#2913}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736510400 {#2918
date: 2025-01-10 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743768000 {#2916
date: 2025-04-04 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2915
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2914
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "570.00"
-singleOccupancy: "570.00"
-tripleOccupancy: "75.00"
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 75.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2868
#collection: Doctrine\Common\Collections\ArrayCollection {#2870
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2913}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2872
#collection: Doctrine\Common\Collections\ArrayCollection {#2867
-elements: array:14 [
0 => App\Entity\RoomCapacities {#4219
-id: 2349
-room: App\Entity\Rooms {#2913}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#4220
-id: 2350
-room: App\Entity\Rooms {#2913}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#4241
-id: 2351
-room: App\Entity\Rooms {#2913}
-adults: 3
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#4239
-id: 2352
-room: App\Entity\Rooms {#2913}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#4240
-id: 2353
-room: App\Entity\Rooms {#2913}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#4237
-id: 2354
-room: App\Entity\Rooms {#2913}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#4238
-id: 2355
-room: App\Entity\Rooms {#2913}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#4235
-id: 2356
-room: App\Entity\Rooms {#2913}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#4236
-id: 2357
-room: App\Entity\Rooms {#2913}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#4233
-id: 2358
-room: App\Entity\Rooms {#2913}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#4234
-id: 2359
-room: App\Entity\Rooms {#2913}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#4231
-id: 2360
-room: App\Entity\Rooms {#2913}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#4232
-id: 2361
-room: App\Entity\Rooms {#2913}
-adults: 2
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#4229
-id: 2362
-room: App\Entity\Rooms {#2913}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:14 [ …14]
-owner: App\Entity\Rooms {#2913}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2920
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2919
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666935be67105145140374.jpg"
-gallery: App\Entity\Galleries {#2873
-id: 139
-hotel: null
-room: App\Entity\Rooms {#2913}
-images: Doctrine\ORM\PersistentCollection {#2880
#collection: Doctrine\Common\Collections\ArrayCollection {#2883
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2873}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Meridien family suite front de mer"
}
-mediaDirSlug: "101"
-lowerRoomPrice: null
-services: null
-slug: "family-suite-front-de-mer"
}
4 => App\Entity\Rooms {#2885
-id: 102
-name: "Royal Suite"
-description: "Les 6 Suites Royales, d'une superficie de 150 m², sont aménagées en duplex à l'étage, offrant une vue spectaculaire sur l'océan. Au premier niveau, vous trouverez une entrée avec dressing, un espace bar-café, un séjour avec plafond cathédrale comprenant un espace repas et salon, ainsi qu'un balcon aménagé. Le second niveau dispose d'un dressing, d'une chambre avec un lit King Size (200x200), d'un espace bureau et d'une salle de bain ouverte."
-active: true
-hotel: App\Entity\Hotels {#1204}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#12609
-elements: array:1 [
0 => App\Entity\RoomPrices {#2891
-id: 1762
-title: "Le Meridien - Royal Suite - Shoulder Season"
-room: App\Entity\Rooms {#2885}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736510400 {#2886
date: 2025-01-10 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743768000 {#2889
date: 2025-04-04 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2888
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2890
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "890.00"
-singleOccupancy: "870.00"
-tripleOccupancy: "75.00"
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 75.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2896
#collection: Doctrine\Common\Collections\ArrayCollection {#2895
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2885}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2897
#collection: Doctrine\Common\Collections\ArrayCollection {#2892
-elements: array:14 [
0 => App\Entity\RoomCapacities {#4230
-id: 2363
-room: App\Entity\Rooms {#2885}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#4227
-id: 2364
-room: App\Entity\Rooms {#2885}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#4228
-id: 2365
-room: App\Entity\Rooms {#2885}
-adults: 3
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#4225
-id: 2366
-room: App\Entity\Rooms {#2885}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#4226
-id: 2367
-room: App\Entity\Rooms {#2885}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#4223
-id: 2368
-room: App\Entity\Rooms {#2885}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#4224
-id: 2369
-room: App\Entity\Rooms {#2885}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#4221
-id: 2370
-room: App\Entity\Rooms {#2885}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#4244
-id: 2371
-room: App\Entity\Rooms {#2885}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#4245
-id: 2372
-room: App\Entity\Rooms {#2885}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#4246
-id: 2373
-room: App\Entity\Rooms {#2885}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#4247
-id: 2374
-room: App\Entity\Rooms {#2885}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#4248
-id: 2375
-room: App\Entity\Rooms {#2885}
-adults: 2
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#4249
-id: 2376
-room: App\Entity\Rooms {#2885}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:14 [ …14]
-owner: App\Entity\Rooms {#2885}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2882
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2879
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "6669373841912940996954.jpg"
-gallery: App\Entity\Galleries {#2842
-id: 8
-hotel: null
-room: App\Entity\Rooms {#2885}
-images: Doctrine\ORM\PersistentCollection {#2812
#collection: Doctrine\Common\Collections\ArrayCollection {#2843
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2842}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Le Meridien Royal Suite"
}
-mediaDirSlug: "102"
-lowerRoomPrice: null
-services: null
-slug: "royal-suite"
}
5 => App\Entity\Rooms {#3015
-id: 103
-name: "Nirvana Tranquil Bliss"
-description: "Les 18 Chambres Nirvana Tranquil Bliss, d’une superficie de 56 m², sont situées au premier étage de la section Nirvana, réservée aux adultes. Elles offrent un cadre paisible et élégant avec un lit King Size, une salle de bain moderne et un balcon privé avec vue sur le jardin."
-active: true
-hotel: App\Entity\Hotels {#1204}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#12630
-elements: array:1 [
0 => App\Entity\RoomPrices {#2991
-id: 1772
-title: "Le Meridien - Nirvana Tranquil Bliss - Shoulder Season"
-room: App\Entity\Rooms {#3015}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736510400 {#3036
date: 2025-01-10 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743768000 {#3034
date: 2025-04-04 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#3028
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#3022
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "480.00"
-singleOccupancy: "480.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: null
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#3009
#collection: Doctrine\Common\Collections\ArrayCollection {#3003
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#3015}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2997
#collection: Doctrine\Common\Collections\ArrayCollection {#2972
-elements: array:5 [
0 => App\Entity\RoomCapacities {#4250
-id: 2377
-room: App\Entity\Rooms {#3015}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#4251
-id: 2378
-room: App\Entity\Rooms {#3015}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#4252
-id: 3057
-room: App\Entity\Rooms {#3015}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#4253
-id: 3058
-room: App\Entity\Rooms {#3015}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#4254
-id: 3059
-room: App\Entity\Rooms {#3015}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:5 [ …5]
-owner: App\Entity\Rooms {#3015}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1304
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2849
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "66693af402245843155624.jpg"
-gallery: App\Entity\Galleries {#2990
-id: 140
-hotel: null
-room: App\Entity\Rooms {#3015}
-images: Doctrine\ORM\PersistentCollection {#2989
#collection: Doctrine\Common\Collections\ArrayCollection {#2988
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#2990}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Meridien tranquil bliss"
}
-mediaDirSlug: "103"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "nirvana-tranquil-bliss"
}
6 => App\Entity\Rooms {#2981
-id: 104
-name: "Romantic Allure"
-description: "Les 16 Chambres Nirvana Romantique Allure, d’une superficie de 56 m², sont situées au premier étage de la section Nirvana, réservée aux adultes. Chaque chambre comprend un lit King Size, une salle de bain moderne et un balcon privé offrant une vue imprenable sur l'océan. Les avantages incluent l'accès exclusif à la piscine et à l'espace plage réservés aux clients Nirvana, une bouteille de vin et une assiette de fruits à l'arrivée, le petit-déjeuner en chambre offert (frais de plateau en sus), ainsi que des boissons (thé, café, jus et softs) gratuites tous les jours de 11h00 à 18h00 au Nirvana Pool Bar. De plus, un cocktail accompagné de canapés est servi quotidiennement au coucher du soleil."
-active: true
-hotel: App\Entity\Hotels {#1204}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#12651
-elements: array:1 [
0 => App\Entity\RoomPrices {#2994
-id: 1782
-title: "Le Meridien - Romantic Allure - Shoulder Season"
-room: App\Entity\Rooms {#2981}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736510400 {#2985
date: 2025-01-10 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743768000 {#2984
date: 2025-04-04 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#2983
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#2982
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "570.00"
-singleOccupancy: "570.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: null
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#2980
#collection: Doctrine\Common\Collections\ArrayCollection {#2979
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#2981}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#2978
#collection: Doctrine\Common\Collections\ArrayCollection {#3038
-elements: array:5 [
0 => App\Entity\RoomCapacities {#4255
-id: 2379
-room: App\Entity\Rooms {#2981}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#4256
-id: 2380
-room: App\Entity\Rooms {#2981}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#4257
-id: 3066
-room: App\Entity\Rooms {#2981}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#4258
-id: 3067
-room: App\Entity\Rooms {#2981}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#4259
-id: 3068
-room: App\Entity\Rooms {#2981}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:5 [ …5]
-owner: App\Entity\Rooms {#2981}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#2987
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#2986
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666939d1c5436658738912.jpeg"
-gallery: App\Entity\Galleries {#3033
-id: 141
-hotel: null
-room: App\Entity\Rooms {#2981}
-images: Doctrine\ORM\PersistentCollection {#3019
#collection: Doctrine\Common\Collections\ArrayCollection {#3032
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#3033}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Meridien romantic allure"
}
-mediaDirSlug: "104"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "romantic-allure"
}
7 => App\Entity\Rooms {#3025
-id: 105
-name: "Plunge Pool Hideaway"
-description: "Les 16 Chambres Nirvana avec Plunge Pool, d'une superficie de 112 m², sont situées au rez-de-chaussée et orientées vers les jardins, avec un accès côté océan. Elles comprennent une chambre avec un lit King Size (200x200), un salon confortable, une salle de bain semi-ouverte sur la chambre, et une terrasse arrière avec une plunge pool. Les plantes tropicales autour de la plunge pool préservent votre intimité, bien qu'il soit possible de voir et d'être légèrement vu par les passants des autres suites Nirvana."
-active: true
-hotel: App\Entity\Hotels {#1204}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#12672
-elements: array:1 [
0 => App\Entity\RoomPrices {#3017
-id: 1792
-title: "Le Meridien - Plunge Pool Hideaway - Shoulder Season"
-room: App\Entity\Rooms {#3025}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736510400 {#3029
date: 2025-01-10 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743768000 {#3030
date: 2025-04-04 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#3027
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#3020
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "675.00"
-singleOccupancy: "675.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: null
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#3023
#collection: Doctrine\Common\Collections\ArrayCollection {#3024
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#3025}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#3021
#collection: Doctrine\Common\Collections\ArrayCollection {#3013
-elements: array:5 [
0 => App\Entity\RoomCapacities {#4260
-id: 2381
-room: App\Entity\Rooms {#3025}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#4261
-id: 2382
-room: App\Entity\Rooms {#3025}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#4262
-id: 3063
-room: App\Entity\Rooms {#3025}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#4263
-id: 3064
-room: App\Entity\Rooms {#3025}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#4264
-id: 3065
-room: App\Entity\Rooms {#3025}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:5 [ …5]
-owner: App\Entity\Rooms {#3025}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#3026
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#3031
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "66693ad04398a465174846.jpeg"
-gallery: App\Entity\Galleries {#3014
-id: 142
-hotel: null
-room: App\Entity\Rooms {#3025}
-images: Doctrine\ORM\PersistentCollection {#3007
#collection: Doctrine\Common\Collections\ArrayCollection {#3012
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#3014}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Meridien plunge pool hideaway"
}
-mediaDirSlug: "105"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "plunge-pool-hideaway"
}
8 => App\Entity\Rooms {#3005
-id: 106
-name: "Nirvana Grand Suite"
-description: "La Nirvana Grand Suite, répartie sur deux niveaux, offre à l'étage une chambre élégante équipée d'un lit double et d'une salle de bain lumineuse avec une douche à l’italienne et une baignoire. Le rez-de-chaussée dispose d'un salon spacieux, d'une belle salle à manger et d'un bar. La suite s'étend également sur une terrasse privée."
-active: true
-hotel: App\Entity\Hotels {#1204}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#12693
-elements: array:1 [
0 => App\Entity\RoomPrices {#3041
-id: 1802
-title: "Le Meridien - Nirvana Grand Suite - Shoulder Season"
-room: App\Entity\Rooms {#3005}
-quantity: null
-stayStartedAt: DateTimeImmutable @1736510400 {#3008
date: 2025-01-10 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1743768000 {#3001
date: 2025-04-04 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#3006
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#3004
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 2
-doubleOccupancy: "1080.00"
-singleOccupancy: "1080.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: null
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#3002
#collection: Doctrine\Common\Collections\ArrayCollection {#2995
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#3005}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#3000
#collection: Doctrine\Common\Collections\ArrayCollection {#2998
-elements: array:5 [
0 => App\Entity\RoomCapacities {#4265
-id: 2383
-room: App\Entity\Rooms {#3005}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#4266
-id: 2384
-room: App\Entity\Rooms {#3005}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#4267
-id: 3060
-room: App\Entity\Rooms {#3005}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#4268
-id: 3061
-room: App\Entity\Rooms {#3005}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#4269
-id: 3062
-room: App\Entity\Rooms {#3005}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:5 [ …5]
-owner: App\Entity\Rooms {#3005}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#3010
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#3011
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "66693cd910286572902604.jpeg"
-gallery: App\Entity\Galleries {#3042
-id: 143
-hotel: null
-room: App\Entity\Rooms {#3005}
-images: Doctrine\ORM\PersistentCollection {#3043
#collection: Doctrine\Common\Collections\ArrayCollection {#3044
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#3042}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Meridien Nirvana grand suite"
}
-mediaDirSlug: "106"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "nirvana-grand-suite"
}
]
}
#initialized: true
-snapshot: array:9 [ …9]
-owner: App\Entity\Hotels {#1204}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#880 …}
-backRefFieldName: "hotel"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-address: "Village Hall Lane, Pointe Aux Piments, Île Maurice"
-checkInTime: null
-checkOutTime: "11:00"
-babyAgeMax: "5"
-childAgeMax: "12"
-teenAgeMax: "15"
-extraCharges: Doctrine\ORM\PersistentCollection {#1207
#collection: Doctrine\Common\Collections\ArrayCollection {#1208
-elements: array:5 [
0 => App\Entity\ExtraCharges {#12745
-id: 69
-title: "Suppléments repas Pension complète"
-description: null
-adultExtra: 40.0
-babyExtra: null
-childExtra: null
-teenExtra: 40.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1204}
}
1 => App\Entity\ExtraCharges {#12742
-id: 70
-title: "Suppléments repas All Inclusive"
-description: null
-adultExtra: 80.0
-babyExtra: null
-childExtra: null
-teenExtra: 80.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1204}
}
2 => App\Entity\ExtraCharges {#12752
-id: 81
-title: "Suppléments repas de fêtes Noêl"
-description: null
-adultExtra: 100.0
-babyExtra: 0.0
-childExtra: 45.0
-teenExtra: 100.0
-stayStartedAt: DateTimeImmutable @1734998400 {#12744
date: 2024-12-24 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1735084800 {#12750
date: 2024-12-25 00:00:00.0 UTC (+00:00)
}
-isActive: false
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1204}
}
3 => App\Entity\ExtraCharges {#12755
-id: 83
-title: "Suppléments repas de fêtes Nouvel An"
-description: null
-adultExtra: 125.0
-babyExtra: 0.0
-childExtra: 65.0
-teenExtra: 125.0
-stayStartedAt: DateTimeImmutable @1735603200 {#12753
date: 2024-12-31 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1735689600 {#12754
date: 2025-01-01 00:00:00.0 UTC (+00:00)
}
-isActive: false
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1204}
}
4 => App\Entity\ExtraCharges {#12756
-id: 199
-title: "Base Demi pension"
-description: null
-adultExtra: 0.0
-babyExtra: 0.0
-childExtra: 0.0
-teenExtra: 0.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: true
-minNights: null
-hotel: App\Entity\Hotels {#1204}
}
]
}
#initialized: true
-snapshot: array:5 [ …5]
-owner: App\Entity\Hotels {#1204}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#876 …}
-backRefFieldName: "hotel"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-imageFile: null
-featuredImage: "66603c2e03c0b500095063.jpeg"
-gallery: App\Entity\Galleries {#1211
-id: 144
-hotel: App\Entity\Hotels {#1204}
-room: null
-images: Doctrine\ORM\PersistentCollection {#1212
#collection: Doctrine\Common\Collections\ArrayCollection {#1213
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1211}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Hotel Meridien"
}
-mediaDirSlug: null
-offers: Doctrine\Common\Collections\ArrayCollection {#12958}
-highlighted: true
-services: array:1 [
0 => ""
]
-hlStartAt: DateTimeImmutable @1730246400 {#1202
date: 2024-10-30 00:00:00.0 UTC (+00:00)
}
-hlEndAt: DateTimeImmutable @1730851200 {#1203
date: 2024-11-06 00:00:00.0 UTC (+00:00)
}
-slug: "le-meridien"
}
-description: null
-stayStartAt: DateTimeImmutable @1717200000 {#12843
date: 2024-06-01 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1761868800 {#12844
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1717200000 {#12845
date: 2024-06-01 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1761868800 {#12846
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-reference: "EarlyBooking"
-minNights: 3
-maxNights: null
-earlyBookingDays: 30
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#12848
#collection: Doctrine\Common\Collections\ArrayCollection {#12849
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12847}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1075 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 25
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#12850
#collection: Doctrine\Common\Collections\ArrayCollection {#12851
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12847}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1081 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-offers: Doctrine\ORM\PersistentCollection {#12852
#collection: Doctrine\Common\Collections\ArrayCollection {#12853
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12847}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1085 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#12854
#collection: Doctrine\Common\Collections\ArrayCollection {#12855
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12847}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1087 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#12856
#collection: Doctrine\Common\Collections\ArrayCollection {#12857
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12847}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1093 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-extrasDiscount: null
-priority: 2
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
1 => App\Entity\Offers {#12862
-id: 112
-title: "LONG STAY LE MERIDIEN"
-type: "LongStay"
-hotel: App\Entity\Hotels {#1204}
-description: null
-stayStartAt: DateTimeImmutable @1717200000 {#12858
date: 2024-06-01 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1761868800 {#12859
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1717200000 {#12860
date: 2024-06-01 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1761868800 {#12861
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-reference: null
-minNights: 14
-maxNights: null
-earlyBookingDays: null
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#12863
#collection: Doctrine\Common\Collections\ArrayCollection {#12864
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12862}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1075 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 10
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#12865
#collection: Doctrine\Common\Collections\ArrayCollection {#12866
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12862}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1081 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-offers: Doctrine\ORM\PersistentCollection {#12867
#collection: Doctrine\Common\Collections\ArrayCollection {#12868
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12862}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1085 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#12869
#collection: Doctrine\Common\Collections\ArrayCollection {#12870
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12862}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1087 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#12871
#collection: Doctrine\Common\Collections\ArrayCollection {#12872
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12862}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1093 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-extrasDiscount: null
-priority: 2
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
2 => App\Entity\Offers {#12877
-id: 182
-title: "WINTER CAMPAIGN 2025"
-type: "Special"
-hotel: App\Entity\Hotels {#1204}
-description: null
-stayStartAt: DateTimeImmutable @1739232000 {#12873
date: 2025-02-11 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1743724800 {#12874
date: 2025-04-04 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1733011200 {#12875
date: 2024-12-01 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1743379200 {#12876
date: 2025-03-31 00:00:00.0 UTC (+00:00)
}
-reference: "WINTER CAMPAIGN 2025"
-minNights: null
-maxNights: null
-earlyBookingDays: null
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#12878
#collection: Doctrine\Common\Collections\ArrayCollection {#12879
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12877}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1075 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 40
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#12880
#collection: Doctrine\Common\Collections\ArrayCollection {#12881
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12877}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1081 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-offers: Doctrine\ORM\PersistentCollection {#12882
#collection: Doctrine\Common\Collections\ArrayCollection {#12883
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12877}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1085 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#12884
#collection: Doctrine\Common\Collections\ArrayCollection {#12885
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12877}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1087 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#12886
#collection: Doctrine\Common\Collections\ArrayCollection {#12887
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#12877}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1093 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-extrasDiscount: null
-priority: 1
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
]
}
1 in
PromotionDTO.php
line 546:
// if booking not respect the interval skip this offer - format('%a') return a string of the diff days, need to convert to integer value
if (intval($booking_interval->format('%a')) < $offer_earlybookingDays) {
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle() . '(nb jours: ' . $offer_earlybookingDays . ')', 'Early booking date interval failure. (début séjour dans '.$booking_interval->format('%a').' jours.)');
}
return $this;
}
"111 - EARLY BOOKING LE MERIDIEN(nb jours: 30)"
2 in
PromotionDTO.php
line 546:
// if booking not respect the interval skip this offer - format('%a') return a string of the diff days, need to convert to integer value
if (intval($booking_interval->format('%a')) < $offer_earlybookingDays) {
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle() . '(nb jours: ' . $offer_earlybookingDays . ')', 'Early booking date interval failure. (début séjour dans '.$booking_interval->format('%a').' jours.)');
}
return $this;
}
"Early booking date interval failure. (début séjour dans 27 jours.)"
1 in
PromotionDTO.php
line 556:
if ($offer_min_nights) {
if($stay_nights < $offer_min_nights){
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle(), 'Min nights failure.');
}
return $this;
}
"112 - LONG STAY LE MERIDIEN"
2 in
PromotionDTO.php
line 556:
if ($offer_min_nights) {
if($stay_nights < $offer_min_nights){
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle(), 'Min nights failure.');
}
return $this;
}
"Min nights failure."
1 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
"Step 1. Offres valides : "
2 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
array:1 [
0 => App\DTO\PromotionDTO {#13090
-debug: true
+id: 182
+title: "WINTER CAMPAIGN 2025"
+description: null
+type: "Special"
+reference: "WINTER CAMPAIGN 2025"
+from: DateTimeImmutable @1739232000 {#12873
date: 2025-02-11 00:00:00.0 UTC (+00:00)
}
+to: DateTimeImmutable @1743724800 {#12874
date: 2025-04-04 00:00:00.0 UTC (+00:00)
}
+earlyBookingDays: null
+minNights: null
+maxNights: null
+discountRate: 40
+discountFamilyRates: []
+combinableRate: null
+priority: 1
+extrasDiscountRate: null
+isAllRooms: true
+isCombinable: false
+selectedRoomsIDs: []
+selectedExtrasIDs: []
+selectedOffersIDs: []
+selectedExtrasDiscountIDs: []
}
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Maritim Resort & Spa - Chambre : #119 - Deluxe has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#13426
+rpId: 2350
+adultsPrice: 284
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 284
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 284
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 284
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 284
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Maritim Resort & Spa - Chambre : #120 - Deluxe Plus has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#13447
+rpId: 2521
+adultsPrice: 332
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 332
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 332
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 332
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 332
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Maritim Resort & Spa - Chambre : #121 - Junior Suite has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#13468
+rpId: 2524
+adultsPrice: 362
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 362
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 362
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 362
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 362
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Maritim Resort & Spa - Chambre : #122 - Suite has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#13489
+rpId: 2527
+adultsPrice: 484
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 484
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 484
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 484
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 484
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
"Update Stay Rooms - Chambers Prices"
2 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
array:1 [
0 => array:4 [
0 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
"room_id" => 119
"room_picture" => "/uploads/rooms/119/666bd32256fda731708061.jpeg"
"room_name" => "Deluxe"
"room_slug" => "maritim-deluxe"
"room_description" => "Grâce au mélange raffiné d'architecture coloniale et tropicale, les chambres doubles Deluxe de l'hôtel dégagent une atmosphère confortable et chaleureuse. La salle de bain avec baignoire et douche indépendantes est séparée de la zone de couchage par d'élégantes portes coulissantes, créant ainsi une grande sensation d'espace. Jusqu'à trois personnes trouvent suffisamment de place dans cette catégorie pour commencer la journée en étant bien reposées."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2350
"adult_amount" => 1136
"children_amount" => 0
"basis_amount" => 1136
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 284
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 284
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 284
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 284
"kids_price" => 0
]
]
]
]
1 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 120
"room_picture" => "/uploads/rooms/120/666bd39946e20898265931.jpeg"
"room_name" => "Deluxe Plus"
"room_slug" => "deluxe-plus"
"room_description" => "Pour se coucher en toute décontraction après une journée à la plage de Balaclava, une partie de golf de 9 trous ou une excursion sur l'île Maurice, cette catégorie de chambre est idéale. En effet, vous disposez non seulement d'un lit king size confortable et d'un canapé-lit pour une troisième personne, mais aussi d'une chambre entièrement climatisée. Encore plus spacieuses, les chambres Deluxe Plus, la "catégorie phare" du Maritim Resort & Spa Mauritius, disposent en outre d'une grande salle de bains équipée d'une baignoire, d'une douche séparée et de deux lavabos, qui peut s'ouvrir sur la chambre à coucher, et parfois d’un armoire de plain-pied."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2521
"adult_amount" => 1328
"children_amount" => 0
"basis_amount" => 1328
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 332
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 332
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 332
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 332
"kids_price" => 0
]
]
]
]
2 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 121
"room_picture" => "/uploads/rooms/121/666bd42ccab7e924948102.jpeg"
"room_name" => "Junior Suite"
"room_slug" => "maritim-junior-suite"
"room_description" => "Vous passerez une nuit bienfaisante dans les suites Junior spacieuses et décorées avec goût, qui conviennent particulièrement aux familles, car la partie nuit peut être partiellement séparée de la partie salon. Toutes les chambres de cette catégorie sont situées dans un complexe récemment construit du Maritim Resort. Pour vous détendre, installez-vous confortablement au bord de la piscine à débordement du complexe avec un bar flottant."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2524
"adult_amount" => 1448
"children_amount" => 0
"basis_amount" => 1448
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 362
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 362
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 362
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 362
"kids_price" => 0
]
]
]
]
3 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 122
"room_picture" => "/uploads/rooms/122/666bd4a14fe46331373410.jpeg"
"room_name" => "Suite"
"room_slug" => "maritim-suite"
"room_description" => "Offrez-vous un monde de confort et de raffinement dans l'une des suites très spacieuses de l'hôtel, avec une chambre à coucher et un salon séparés. Ici aussi, une salle de bains spacieuse avec baignoire et douche indépendantes ainsi que des toilettes séparées vous attendent. Sur votre balcon ou votre terrasse, profitez de la vue sur la mer, d'un café fraîchement préparé et rêvez de votre journée au paradis."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2527
"adult_amount" => 1936
"children_amount" => 0
"basis_amount" => 1936
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 484
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 484
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 484
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 484
"kids_price" => 0
]
]
]
]
]
]
1 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
"Update Stay Rooms results"
2 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
array:4 [
0 => App\DTO\RoomStayDTO {#12757
-marginRate: 20
-id: 119
-name: "Deluxe"
-slug: "maritim-deluxe"
-picture: "/uploads/rooms/119/666bd32256fda731708061.jpeg"
-description: "Grâce au mélange raffiné d'architecture coloniale et tropicale, les chambres doubles Deluxe de l'hôtel dégagent une atmosphère confortable et chaleureuse. La salle de bain avec baignoire et douche indépendantes est séparée de la zone de couchage par d'élégantes portes coulissantes, créant ainsi une grande sensation d'espace. Jusqu'à trois personnes trouvent suffisamment de place dans cette catégorie pour commencer la journée en étant bien reposées."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 200
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 284
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 284
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 284
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 284
"kids_price" => 0
]
]
"amount" => 1136
]
]
-totalRoomAmount: 1136.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#13507
-marginRate: 20
+extraId: 200
+name: "Base All Inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1136.0
+totalStayAmountWoDiscount: 1136.0
+totalStayAmount: 1136.0
+finalAmountWoDiscount: 1363.2
+finalAmount: 1363.2
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#13510
-marginRate: 20
+extraId: 85
+name: "Suppléments repas Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 120
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 480
+kidsExtrasAmount: 0
+stayExtrasAmount: 480
+stayRoomAmount: 1136.0
+totalStayAmountWoDiscount: 1616.0
+totalStayAmount: 1616.0
+finalAmountWoDiscount: 1939.2
+finalAmount: 1939.2
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#13517
-marginRate: 20
+extraId: 87
+name: "Suppléments repas Premium Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 330
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1320
+kidsExtrasAmount: 0
+stayExtrasAmount: 1320
+stayRoomAmount: 1136.0
+totalStayAmountWoDiscount: 2456.0
+totalStayAmount: 2456.0
+finalAmountWoDiscount: 2947.2
+finalAmount: 2947.2
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
1 => App\DTO\RoomStayDTO {#13464
-marginRate: 20
-id: 120
-name: "Deluxe Plus"
-slug: "deluxe-plus"
-picture: "/uploads/rooms/120/666bd39946e20898265931.jpeg"
-description: "Pour se coucher en toute décontraction après une journée à la plage de Balaclava, une partie de golf de 9 trous ou une excursion sur l'île Maurice, cette catégorie de chambre est idéale. En effet, vous disposez non seulement d'un lit king size confortable et d'un canapé-lit pour une troisième personne, mais aussi d'une chambre entièrement climatisée. Encore plus spacieuses, les chambres Deluxe Plus, la "catégorie phare" du Maritim Resort & Spa Mauritius, disposent en outre d'une grande salle de bains équipée d'une baignoire, d'une douche séparée et de deux lavabos, qui peut s'ouvrir sur la chambre à coucher, et parfois d’un armoire de plain-pied."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 200
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 332
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 332
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 332
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 332
"kids_price" => 0
]
]
"amount" => 1328
]
]
-totalRoomAmount: 1328.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#13518
-marginRate: 20
+extraId: 200
+name: "Base All Inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1328.0
+totalStayAmountWoDiscount: 1328.0
+totalStayAmount: 1328.0
+finalAmountWoDiscount: 1593.6
+finalAmount: 1593.6
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#13519
-marginRate: 20
+extraId: 85
+name: "Suppléments repas Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 120
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 480
+kidsExtrasAmount: 0
+stayExtrasAmount: 480
+stayRoomAmount: 1328.0
+totalStayAmountWoDiscount: 1808.0
+totalStayAmount: 1808.0
+finalAmountWoDiscount: 2169.6
+finalAmount: 2169.6
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#13520
-marginRate: 20
+extraId: 87
+name: "Suppléments repas Premium Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 330
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1320
+kidsExtrasAmount: 0
+stayExtrasAmount: 1320
+stayRoomAmount: 1328.0
+totalStayAmountWoDiscount: 2648.0
+totalStayAmount: 2648.0
+finalAmountWoDiscount: 3177.6
+finalAmount: 3177.6
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
2 => App\DTO\RoomStayDTO {#13485
-marginRate: 20
-id: 121
-name: "Junior Suite"
-slug: "maritim-junior-suite"
-picture: "/uploads/rooms/121/666bd42ccab7e924948102.jpeg"
-description: "Vous passerez une nuit bienfaisante dans les suites Junior spacieuses et décorées avec goût, qui conviennent particulièrement aux familles, car la partie nuit peut être partiellement séparée de la partie salon. Toutes les chambres de cette catégorie sont situées dans un complexe récemment construit du Maritim Resort. Pour vous détendre, installez-vous confortablement au bord de la piscine à débordement du complexe avec un bar flottant."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 200
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 362
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 362
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 362
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 362
"kids_price" => 0
]
]
"amount" => 1448
]
]
-totalRoomAmount: 1448.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#13521
-marginRate: 20
+extraId: 200
+name: "Base All Inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1448.0
+totalStayAmountWoDiscount: 1448.0
+totalStayAmount: 1448.0
+finalAmountWoDiscount: 1737.6
+finalAmount: 1737.6
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#13522
-marginRate: 20
+extraId: 85
+name: "Suppléments repas Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 120
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 480
+kidsExtrasAmount: 0
+stayExtrasAmount: 480
+stayRoomAmount: 1448.0
+totalStayAmountWoDiscount: 1928.0
+totalStayAmount: 1928.0
+finalAmountWoDiscount: 2313.6
+finalAmount: 2313.6
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#13523
-marginRate: 20
+extraId: 87
+name: "Suppléments repas Premium Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 330
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1320
+kidsExtrasAmount: 0
+stayExtrasAmount: 1320
+stayRoomAmount: 1448.0
+totalStayAmountWoDiscount: 2768.0
+totalStayAmount: 2768.0
+finalAmountWoDiscount: 3321.6
+finalAmount: 3321.6
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
3 => App\DTO\RoomStayDTO {#13484
-marginRate: 20
-id: 122
-name: "Suite"
-slug: "maritim-suite"
-picture: "/uploads/rooms/122/666bd4a14fe46331373410.jpeg"
-description: "Offrez-vous un monde de confort et de raffinement dans l'une des suites très spacieuses de l'hôtel, avec une chambre à coucher et un salon séparés. Ici aussi, une salle de bains spacieuse avec baignoire et douche indépendantes ainsi que des toilettes séparées vous attendent. Sur votre balcon ou votre terrasse, profitez de la vue sur la mer, d'un café fraîchement préparé et rêvez de votre journée au paradis."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 200
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 484
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 484
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 484
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 484
"kids_price" => 0
]
]
"amount" => 1936
]
]
-totalRoomAmount: 1936.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#13524
-marginRate: 20
+extraId: 200
+name: "Base All Inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1936.0
+totalStayAmountWoDiscount: 1936.0
+totalStayAmount: 1936.0
+finalAmountWoDiscount: 2323.2
+finalAmount: 2323.2
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#13525
-marginRate: 20
+extraId: 85
+name: "Suppléments repas Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 120
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 480
+kidsExtrasAmount: 0
+stayExtrasAmount: 480
+stayRoomAmount: 1936.0
+totalStayAmountWoDiscount: 2416.0
+totalStayAmount: 2416.0
+finalAmountWoDiscount: 2899.2
+finalAmount: 2899.2
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#13526
-marginRate: 20
+extraId: 87
+name: "Suppléments repas Premium Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 330
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1320
+kidsExtrasAmount: 0
+stayExtrasAmount: 1320
+stayRoomAmount: 1936.0
+totalStayAmountWoDiscount: 3256.0
+totalStayAmount: 3256.0
+finalAmountWoDiscount: 3907.2
+finalAmount: 3907.2
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Salt of Palmar - Chambre : #135 - Chambre "Gardien View" has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#13567
+rpId: 1910
+adultsPrice: 270
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 270
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 270
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 270
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 270
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Salt of Palmar - Chambre : #136 - Chambre "Seaview" has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#13588
+rpId: 1921
+adultsPrice: 300
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 300
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 300
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 300
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 300
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
"Hotel : Salt of Palmar - Chambre : #137 - Chambre "Bang on Beach" has the capacity config check: "
2 in
RoomStayCalculation.php
line 61:
$chambersRoomsPrices[$indexChamber][$key]['isCapacity'] = $chamber->hasMatchingRoomCapacity($room->getroomCapacities());
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
true
In
RoomStayCalculation.php
line 62:
if ($this->debug) {
dump('Hotel : '.$hotel->getName().' - Chambre : #'. $room->getId(). ' - '.$room->getName(). ' has the capacity config check: ', $chambersRoomsPrices[$indexChamber][$key]['isCapacity']);
dump($chamber);
}
// check room capacities
App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
1 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
"getDatesAndDailyPrices() -> Results before parsing"
2 in
RoomStayCalculation.php
line 472:
}
if ($this->debug) {
dump('getDatesAndDailyPrices() -> Results before parsing', $roomPricesDatesAndPrice);
}
array:1 [
0 => App\DTO\RoomDatesAndPricesDTO {#13609
+rpId: 1931
+adultsPrice: 330
+childrenPrice: 0
+startAt: DateTimeImmutable @1742601600 {#824
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+endAt: DateTimeImmutable @1743033540 {#825
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
}
]
1 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
"parseDailyPrices() -> Parsed daily prices"
2 in
RoomStayCalculation.php
line 481:
$prices_wo_extras = $this->parseDailyPrices($roomPricesDatesAndPrice);
if ($this->debug) {
dump('parseDailyPrices() -> Parsed daily prices', $prices_wo_extras);
}
if (!$prices_wo_extras) {
array:4 [
"2025-03-22" => array:2 [
"adults_price" => 330
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 330
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 330
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 330
"kids_price" => 0
]
]
1 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
"Update Stay Rooms - Chambers Prices"
2 in
RoomStayCalculation.php
line 88:
$searchResults = [];
if ($this->debug) {
dump('Update Stay Rooms - Chambers Prices', $chambersRoomsPrices);
}
array:1 [
0 => array:3 [
0 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820
+nbAdults: 2
+nbChildren: 0
+teenCount: null
+childCount: null
+babyCount: null
+birthdays: []
}
"room_id" => 135
"room_picture" => "/uploads/rooms/135/671634540e650377649460.jpg"
"room_name" => "Chambre "Gardien View""
"room_slug" => "chambre-gardien-view"
"room_description" => "Découvrez le lagon turquoise au travers du jardin verdoyant. Écoutez le doux son des filaos qui se balancent dans la brise."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1910
"adult_amount" => 1080
"children_amount" => 0
"basis_amount" => 1080
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 270
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 270
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 270
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 270
"kids_price" => 0
]
]
]
]
1 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 136
"room_picture" => "/uploads/rooms/136/67163492bdafa859065851.jpg"
"room_name" => "Chambre "Seaview""
"room_slug" => "chambre-seaview"
"room_description" => """
Vous êtes à deux pas de la piscine et de la mer.\r\n
C’est une bénédiction quotidienne. Autorisez-vous un plongeon rafraîchissant en cours de journée ou installez-vous pour un long bain de soleil.
"""
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1921
"adult_amount" => 1200
"children_amount" => 0
"basis_amount" => 1200
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 300
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 300
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 300
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 300
"kids_price" => 0
]
]
]
]
2 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 137
"room_picture" => "/uploads/rooms/137/671634e0d36cb018552240.jpg"
"room_name" => "Chambre "Bang on Beach""
"room_slug" => "chambre-bang-on-beach"
"room_description" => "C’est la vie, la vraie. Ouvrez vos portes sur un sable blanc immaculé. Laissez-vous bercer par le clapotis des vagues pour une bonne nuit de sommeil."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1931
"adult_amount" => 1320
"children_amount" => 0
"basis_amount" => 1320
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 330
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 330
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 330
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 330
"kids_price" => 0
]
]
]
]
]
]
1 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
"Update Stay Rooms results"
2 in
RoomStayCalculation.php
line 217:
}
if ($this->debug) {
dump('Update Stay Rooms results', $searchResults);
}
// Set the results and sort by total amount ASC
array:3 [
0 => App\DTO\RoomStayDTO {#13516
-marginRate: 20
-id: 135
-name: "Chambre "Gardien View""
-slug: "chambre-gardien-view"
-picture: "/uploads/rooms/135/671634540e650377649460.jpg"
-description: "Découvrez le lagon turquoise au travers du jardin verdoyant. Écoutez le doux son des filaos qui se balancent dans la brise."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 189
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 270
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 270
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 270
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 270
"kids_price" => 0
]
]
"amount" => 1080
]
]
-totalRoomAmount: 1080.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#13626
-marginRate: 20
+extraId: 189
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1080.0
+totalStayAmountWoDiscount: 1080.0
+totalStayAmount: 1080.0
+finalAmountWoDiscount: 1296.0
+finalAmount: 1296.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#13629
-marginRate: 20
+extraId: 89
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 90
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 360
+kidsExtrasAmount: 0
+stayExtrasAmount: 360
+stayRoomAmount: 1080.0
+totalStayAmountWoDiscount: 1440.0
+totalStayAmount: 1440.0
+finalAmountWoDiscount: 1728.0
+finalAmount: 1728.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#13632
-marginRate: 20
+extraId: 90
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 1080.0
+totalStayAmountWoDiscount: 1720.0
+totalStayAmount: 1720.0
+finalAmountWoDiscount: 2064.0
+finalAmount: 2064.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#13633
-marginRate: 20
+extraId: 92
+name: "Formule "Tout Inclus""
+description: null
+stayTotalNights: 4
+dailyAdults: 240
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 960
+kidsExtrasAmount: 0
+stayExtrasAmount: 960
+stayRoomAmount: 1080.0
+totalStayAmountWoDiscount: 2040.0
+totalStayAmount: 2040.0
+finalAmountWoDiscount: 2448.0
+finalAmount: 2448.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
1 => App\DTO\RoomStayDTO {#13584
-marginRate: 20
-id: 136
-name: "Chambre "Seaview""
-slug: "chambre-seaview"
-picture: "/uploads/rooms/136/67163492bdafa859065851.jpg"
-description: """
Vous êtes à deux pas de la piscine et de la mer.\r\n
C’est une bénédiction quotidienne. Autorisez-vous un plongeon rafraîchissant en cours de journée ou installez-vous pour un long bain de soleil.
"""
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 189
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 300
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 300
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 300
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 300
"kids_price" => 0
]
]
"amount" => 1200
]
]
-totalRoomAmount: 1200.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#13634
-marginRate: 20
+extraId: 189
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1200.0
+totalStayAmountWoDiscount: 1200.0
+totalStayAmount: 1200.0
+finalAmountWoDiscount: 1440.0
+finalAmount: 1440.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#13635
-marginRate: 20
+extraId: 89
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 90
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 360
+kidsExtrasAmount: 0
+stayExtrasAmount: 360
+stayRoomAmount: 1200.0
+totalStayAmountWoDiscount: 1560.0
+totalStayAmount: 1560.0
+finalAmountWoDiscount: 1872.0
+finalAmount: 1872.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#13636
-marginRate: 20
+extraId: 90
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 1200.0
+totalStayAmountWoDiscount: 1840.0
+totalStayAmount: 1840.0
+finalAmountWoDiscount: 2208.0
+finalAmount: 2208.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#13637
-marginRate: 20
+extraId: 92
+name: "Formule "Tout Inclus""
+description: null
+stayTotalNights: 4
+dailyAdults: 240
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 960
+kidsExtrasAmount: 0
+stayExtrasAmount: 960
+stayRoomAmount: 1200.0
+totalStayAmountWoDiscount: 2160.0
+totalStayAmount: 2160.0
+finalAmountWoDiscount: 2592.0
+finalAmount: 2592.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
2 => App\DTO\RoomStayDTO {#13605
-marginRate: 20
-id: 137
-name: "Chambre "Bang on Beach""
-slug: "chambre-bang-on-beach"
-picture: "/uploads/rooms/137/671634e0d36cb018552240.jpg"
-description: "C’est la vie, la vraie. Ouvrez vos portes sur un sable blanc immaculé. Laissez-vous bercer par le clapotis des vagues pour une bonne nuit de sommeil."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 189
-chambersStayDetails: array:1 [
0 => array:3 [
"config" => array:4 [
"adults" => 2
"teens" => 0
"children" => 0
"babies" => 0
]
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 330
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 330
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 330
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 330
"kids_price" => 0
]
]
"amount" => 1320
]
]
-totalRoomAmount: 1320.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:4 [
0 => App\DTO\ExtraStayDTO {#13638
-marginRate: 20
+extraId: 189
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1320.0
+totalStayAmountWoDiscount: 1320.0
+totalStayAmount: 1320.0
+finalAmountWoDiscount: 1584.0
+finalAmount: 1584.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#13639
-marginRate: 20
+extraId: 89
+name: "Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 90
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 360
+kidsExtrasAmount: 0
+stayExtrasAmount: 360
+stayRoomAmount: 1320.0
+totalStayAmountWoDiscount: 1680.0
+totalStayAmount: 1680.0
+finalAmountWoDiscount: 2016.0
+finalAmount: 2016.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#13640
-marginRate: 20
+extraId: 90
+name: "Pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 1320.0
+totalStayAmountWoDiscount: 1960.0
+totalStayAmount: 1960.0
+finalAmountWoDiscount: 2352.0
+finalAmount: 2352.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#13641
-marginRate: 20
+extraId: 92
+name: "Formule "Tout Inclus""
+description: null
+stayTotalNights: 4
+dailyAdults: 240
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 960
+kidsExtrasAmount: 0
+stayExtrasAmount: 960
+stayRoomAmount: 1320.0
+totalStayAmountWoDiscount: 2280.0
+totalStayAmount: 2280.0
+finalAmountWoDiscount: 2736.0
+finalAmount: 2736.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
]
1 in
RoomStayCalculation.php
line 274:
{
$offers_eligibled = [];
if ($this->debug) {
dump('All available offers of the hotel', $offers);
}
foreach ($offers as $key => $offer) {
"All available offers of the hotel"
2 in
RoomStayCalculation.php
line 274:
{
$offers_eligibled = [];
if ($this->debug) {
dump('All available offers of the hotel', $offers);
}
foreach ($offers as $key => $offer) {
Doctrine\Common\Collections\ArrayCollection {#13753
-elements: array:2 [
0 => App\Entity\Offers {#13672
-id: 238
-title: "FLASH SALES 30%"
-type: "Special"
-hotel: App\Entity\Hotels {#1252
-id: 22
-name: "Salt of Palmar"
-description: """
Le premier SALT devait être à Maurice. C'est notre maison, notre amour, notre fierté et notre joie. C'est une beauté exotique indéniable. Volcanique, blanc, bleu et vert. C'est indien, français, créole, chinois et africain. Ses couleurs, ses histoires, ses coutumes, ses sons et ses saveurs forment un mélange brillant et enivrant qu'il est impossible d'ignorer ou d'oublier. Si vous en faites l'expérience.\r\n
\r\n
C'est pourquoi nous avons créé SALT of Palmar. L’île Maurice est mûre pour l’exploration, imprégnée d’histoire et regorgeant d’un patrimoine humble et d’une culture moderne. Et nous voulons vous montrer la vraie Maurice.
"""
-website: "https://www.saltresorts.com/fr/maurice/hotel/saltofpalmar"
-stars: 5
-youtubeVideoId: "obiIi19ck1o"
-phone: "+230 698 2727"
-email: "reservation@saltresorts.com"
-active: true
-gmapUrl: "<iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3744.275639081461!2d57.78713181217443!3d-20.205863881167257!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x217cfb1a0e896841%3A0x6e2cca285821d4b0!2sSALT%20of%20Palmar%2C%20an%20adult-only%20boutique%20hotel%2C%20a%20member%20of%20Design%20Hotels!5e0!3m2!1sfr!2sfr!4v1718969540531!5m2!1sfr!2sfr" width="100%" height="600" style="border:0;" allowfullscreen="" loading="lazy" referrerpolicy="no-referrer-when-downgrade"></iframe>"
-zone: "Est"
-createdAt: DateTimeImmutable @1714145854 {#1250
date: 2024-04-26 15:37:34.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1733849171 {#1251
date: 2024-12-10 16:46:11.0 UTC (+00:00)
}
-rooms: Doctrine\ORM\PersistentCollection {#1253
#collection: Doctrine\Common\Collections\ArrayCollection {#1254
-elements: array:3 [
0 => App\Entity\Rooms {#3206
-id: 135
-name: "Chambre "Gardien View""
-description: "Découvrez le lagon turquoise au travers du jardin verdoyant. Écoutez le doux son des filaos qui se balancent dans la brise."
-active: true
-hotel: App\Entity\Hotels {#1252}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#13559
-elements: array:1 [
0 => App\Entity\RoomPrices {#3162
-id: 1910
-title: "Chambre "Gardien View" - Moyenne Saison"
-room: App\Entity\Rooms {#3206}
-quantity: null
-stayStartedAt: DateTimeImmutable @1737201600 {#3051
date: 2025-01-18 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746014400 {#3062
date: 2025-04-30 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#3208
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#3207
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "270.00"
-singleOccupancy: "255.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 55.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#3205
#collection: Doctrine\Common\Collections\ArrayCollection {#3204
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#3206}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#3203
#collection: Doctrine\Common\Collections\ArrayCollection {#3158
-elements: array:3 [
0 => App\Entity\RoomCapacities {#4341
-id: 1777
-room: App\Entity\Rooms {#3206}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#4340
-id: 1778
-room: App\Entity\Rooms {#3206}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#4339
-id: 1779
-room: App\Entity\Rooms {#3206}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:3 [ …3]
-owner: App\Entity\Rooms {#3206}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#3213
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#3184
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "671634540e650377649460.jpg"
-gallery: App\Entity\Galleries {#3157
-id: 108
-hotel: null
-room: App\Entity\Rooms {#3206}
-images: Doctrine\ORM\PersistentCollection {#3164
#collection: Doctrine\Common\Collections\ArrayCollection {#3167
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#3157}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Salt of Palmar Gardien view"
}
-mediaDirSlug: "135"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "chambre-gardien-view"
}
1 => App\Entity\Rooms {#3174
-id: 136
-name: "Chambre "Seaview""
-description: """
Vous êtes à deux pas de la piscine et de la mer.\r\n
C’est une bénédiction quotidienne. Autorisez-vous un plongeon rafraîchissant en cours de journée ou installez-vous pour un long bain de soleil.
"""
-active: true
-hotel: App\Entity\Hotels {#1252}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#13554
-elements: array:1 [
0 => App\Entity\RoomPrices {#3183
-id: 1921
-title: "Chambre "Seaview" - Moyenne Saison (copie)"
-room: App\Entity\Rooms {#3174}
-quantity: null
-stayStartedAt: DateTimeImmutable @1737201600 {#3163
date: 2025-01-18 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746014400 {#3170
date: 2025-04-30 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#3173
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#3172
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "300.00"
-singleOccupancy: "285.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 55.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#3169
#collection: Doctrine\Common\Collections\ArrayCollection {#3176
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#3174}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#3179
#collection: Doctrine\Common\Collections\ArrayCollection {#3178
-elements: array:3 [
0 => App\Entity\RoomCapacities {#4338
-id: 1780
-room: App\Entity\Rooms {#3174}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#4337
-id: 1781
-room: App\Entity\Rooms {#3174}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#4336
-id: 1782
-room: App\Entity\Rooms {#3174}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:3 [ …3]
-owner: App\Entity\Rooms {#3174}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#3166
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#3168
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "67163492bdafa859065851.jpg"
-gallery: App\Entity\Galleries {#3186
-id: 109
-hotel: null
-room: App\Entity\Rooms {#3174}
-images: Doctrine\ORM\PersistentCollection {#3185
#collection: Doctrine\Common\Collections\ArrayCollection {#3187
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#3186}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "salt of Palmar Seaview"
}
-mediaDirSlug: "136"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "chambre-seaview"
}
2 => App\Entity\Rooms {#3194
-id: 137
-name: "Chambre "Bang on Beach""
-description: "C’est la vie, la vraie. Ouvrez vos portes sur un sable blanc immaculé. Laissez-vous bercer par le clapotis des vagues pour une bonne nuit de sommeil."
-active: true
-hotel: App\Entity\Hotels {#1252}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#13577
-elements: array:1 [
0 => App\Entity\RoomPrices {#3140
-id: 1931
-title: "Chambre "Bang on Beach" - Moyenne Saison (copie)"
-room: App\Entity\Rooms {#3194}
-quantity: null
-stayStartedAt: DateTimeImmutable @1737201600 {#3192
date: 2025-01-18 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746014400 {#3191
date: 2025-04-30 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#3193
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#3188
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "330.00"
-singleOccupancy: "315.00"
-tripleOccupancy: null
-active: true
-extraBaby: null
-extraChild: null
-extraTeen: 55.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#3181
#collection: Doctrine\Common\Collections\ArrayCollection {#3195
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#3194}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1309 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#3156
#collection: Doctrine\Common\Collections\ArrayCollection {#3197
-elements: array:3 [
0 => App\Entity\RoomCapacities {#4335
-id: 1783
-room: App\Entity\Rooms {#3194}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#4334
-id: 1784
-room: App\Entity\Rooms {#3194}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#4333
-id: 1785
-room: App\Entity\Rooms {#3194}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:3 [ …3]
-owner: App\Entity\Rooms {#3194}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1501 …}
}
-createdAt: DateTimeImmutable @1717520580 {#3182
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672838 {#3189
date: 2024-10-23 08:40:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "671634e0d36cb018552240.jpg"
-gallery: App\Entity\Galleries {#3141
-id: 110
-hotel: null
-room: App\Entity\Rooms {#3194}
-images: Doctrine\ORM\PersistentCollection {#3142
#collection: Doctrine\Common\Collections\ArrayCollection {#3143
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#3141}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Salt of Palmar Bang on Beach"
}
-mediaDirSlug: "137"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "chambre-bang-on-beach"
}
]
}
#initialized: true
-snapshot: array:3 [ …3]
-owner: App\Entity\Hotels {#1252}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#880 …}
-backRefFieldName: "hotel"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-address: "Route Côtière, Palmar, Île Maurice"
-checkInTime: "14:00"
-checkOutTime: "11:00"
-babyAgeMax: "2"
-childAgeMax: "16"
-teenAgeMax: "18"
-extraCharges: Doctrine\ORM\PersistentCollection {#1255
#collection: Doctrine\Common\Collections\ArrayCollection {#1256
-elements: array:4 [
0 => App\Entity\ExtraCharges {#13621
-id: 89
-title: "Demi pension"
-description: null
-adultExtra: 45.0
-babyExtra: null
-childExtra: null
-teenExtra: 45.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1252}
}
1 => App\Entity\ExtraCharges {#13582
-id: 90
-title: "Pension complète"
-description: null
-adultExtra: 80.0
-babyExtra: null
-childExtra: null
-teenExtra: 80.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1252}
}
2 => App\Entity\ExtraCharges {#13598
-id: 92
-title: "Formule "Tout Inclus""
-description: null
-adultExtra: 120.0
-babyExtra: null
-childExtra: null
-teenExtra: 90.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1252}
}
3 => App\Entity\ExtraCharges {#13628
-id: 189
-title: "BASE - PETIT DEJEUNER"
-description: null
-adultExtra: 0.0
-babyExtra: 0.0
-childExtra: 0.0
-teenExtra: 0.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: true
-minNights: null
-hotel: App\Entity\Hotels {#1252}
}
]
}
#initialized: true
-snapshot: array:4 [ …4]
-owner: App\Entity\Hotels {#1252}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#876 …}
-backRefFieldName: "hotel"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-imageFile: null
-featuredImage: "66965da291ccc236118074.jpg"
-gallery: App\Entity\Galleries {#1259
-id: 21
-hotel: App\Entity\Hotels {#1252}
-room: null
-images: Doctrine\ORM\PersistentCollection {#1260
#collection: Doctrine\Common\Collections\ArrayCollection {#1261
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1259}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1103 …}
}
-title: "Hotel Salt of Palmar"
}
-mediaDirSlug: null
-offers: Doctrine\Common\Collections\ArrayCollection {#13753}
-highlighted: false
-services: array:1 [
0 => ""
]
-hlStartAt: null
-hlEndAt: null
-slug: "salt-of-palmar"
}
-description: null
-stayStartAt: DateTimeImmutable @1733011200 {#13665
date: 2024-12-01 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1745971200 {#13646
date: 2025-04-30 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1733011200 {#13664
date: 2024-12-01 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1739577600 {#13670
date: 2025-02-15 00:00:00.0 UTC (+00:00)
}
-reference: "FLASH SALES 30%"
-minNights: null
-maxNights: null
-earlyBookingDays: null
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#13673
#collection: Doctrine\Common\Collections\ArrayCollection {#13674
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#13672}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1075 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 30
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#13675
#collection: Doctrine\Common\Collections\ArrayCollection {#13676
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#13672}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1081 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-offers: Doctrine\ORM\PersistentCollection {#13677
#collection: Doctrine\Common\Collections\ArrayCollection {#13678
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#13672}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1085 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#13679
#collection: Doctrine\Common\Collections\ArrayCollection {#13680
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#13672}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1087 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#13681
#collection: Doctrine\Common\Collections\ArrayCollection {#13682
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#13672}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1093 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-extrasDiscount: null
-priority: 1
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
1 => App\Entity\Offers {#13687
-id: 239
-title: "FABULOUS OFFER 20%"
-type: "Special"
-hotel: App\Entity\Hotels {#1252}
-description: null
-stayStartAt: DateTimeImmutable @1740268800 {#13683
date: 2025-02-23 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1745971200 {#13684
date: 2025-04-30 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1739664000 {#13685
date: 2025-02-16 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1744675200 {#13686
date: 2025-04-15 00:00:00.0 UTC (+00:00)
}
-reference: "FABULOUS OFFER 20%"
-minNights: null
-maxNights: null
-earlyBookingDays: null
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#13688
#collection: Doctrine\Common\Collections\ArrayCollection {#13689
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#13687}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1075 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 20
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#13690
#collection: Doctrine\Common\Collections\ArrayCollection {#13691
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#13687}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1081 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-offers: Doctrine\ORM\PersistentCollection {#13692
#collection: Doctrine\Common\Collections\ArrayCollection {#13693
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#13687}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1085 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#956 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#13694
#collection: Doctrine\Common\Collections\ArrayCollection {#13695
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#13687}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1087 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#13696
#collection: Doctrine\Common\Collections\ArrayCollection {#13697
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#13687}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1093 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#950 …}
}
-extrasDiscount: null
-priority: 1
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
]
}
1 in
PromotionDTO.php
line 522:
if ($offer_bookingStartAt >= $currentBookingDate || $currentBookingDate >= $offer_bookingEndAt)
{
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle(), 'booking dates failure.');
}
return $this;
}
"238 - FLASH SALES 30%"
2 in
PromotionDTO.php
line 522:
if ($offer_bookingStartAt >= $currentBookingDate || $currentBookingDate >= $offer_bookingEndAt)
{
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle(), 'booking dates failure.');
}
return $this;
}
"booking dates failure."
1 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
"Step 1. Offres valides : "
2 in
RoomStayCalculation.php
line 246:
$validOffers = $this->getValidOffers($hotel->getOffers());
if ($this->debug) {
dump('Step 1. Offres valides : ', $validOffers);
}
if ($validOffers == null) {
array:1 [
0 => App\DTO\PromotionDTO {#13849
-debug: true
+id: 239
+title: "FABULOUS OFFER 20%"
+description: null
+type: "Special"
+reference: "FABULOUS OFFER 20%"
+from: DateTimeImmutable @1740268800 {#13683
date: 2025-02-23 00:00:00.0 UTC (+00:00)
}
+to: DateTimeImmutable @1745971200 {#13684
date: 2025-04-30 00:00:00.0 UTC (+00:00)
}
+earlyBookingDays: null
+minNights: null
+maxNights: null
+discountRate: 20
+discountFamilyRates: []
+combinableRate: null
+priority: 1
+extrasDiscountRate: null
+isAllRooms: true
+isCombinable: false
+selectedRoomsIDs: []
+selectedExtrasIDs: []
+selectedOffersIDs: []
+selectedExtrasDiscountIDs: []
}
]
1 in
HomeController.php
line 84:
'config_chambers' => ($siteSession->getSessionVar('search/chambers')) ? json_decode($siteSession->getSessionVar('search/chambers')) : null
];
dump('Search Model booking :', $searchToolsDTO);
$form = $this->createForm(SearchToolsType::class, $searchToolsDTO, $searchTypeOptions);
"Search Model booking :"
2 in
HomeController.php
line 84:
'config_chambers' => ($siteSession->getSessionVar('search/chambers')) ? json_decode($siteSession->getSessionVar('search/chambers')) : null
];
dump('Search Model booking :', $searchToolsDTO);
$form = $this->createForm(SearchToolsType::class, $searchToolsDTO, $searchTypeOptions);
App\DTO\SearchToolsDTO {#738
-date_format: "d/m/Y"
-uploaderHelper: Vich\UploaderBundle\Templating\Helper\UploaderHelper {#739
-storage: Vich\UploaderBundle\Storage\FileSystemStorage {#740
#factory: Vich\UploaderBundle\Mapping\PropertyMappingFactory {#741
-metadata: Vich\UploaderBundle\Metadata\MetadataReader {#458
-reader: Metadata\MetadataFactory {#450
-driver: Metadata\Driver\DriverChain {#451
-drivers: array:4 [
0 => Vich\UploaderBundle\Metadata\Driver\XmlDriver {#452
-locator: Metadata\Driver\FileLocator {#449
-dirs: []
}
}
1 => Vich\UploaderBundle\Metadata\Driver\AnnotationDriver {#453
#reader: Vich\UploaderBundle\Metadata\Driver\AttributeReader {#454}
-managerRegistryList: array:1 [
0 => Doctrine\Bundle\DoctrineBundle\Registry {#83
-name: "ORM"
-connections: array:1 [
"default" => "doctrine.dbal.default_connection"
]
-managers: array:1 [
"default" => "doctrine.orm.default_entity_manager"
]
-defaultConnection: "default"
-defaultManager: "default"
-proxyInterfaceName: "Doctrine\Persistence\Proxy"
#container: ContainerUIpB4Xl\App_KernelDevDebugContainer {#42 …20}
}
]
}
2 => Vich\UploaderBundle\Metadata\Driver\YamlDriver {#455
-locator: Metadata\Driver\FileLocator {#449}
}
3 => Vich\UploaderBundle\Metadata\Driver\YmlDriver {#456
-locator: Metadata\Driver\FileLocator {#449}
}
]
}
-cache: Metadata\Cache\FileCache {#457
-dir: "/var/www/vhost/allons-maurice/app/var/cache/dev/vich_uploader"
}
-loadedMetadata: array:5 [
"App\Entity\Rooms" => Metadata\ClassHierarchyMetadata {#4292
+classMetadata: array:1 [
"App\Entity\Rooms" => Vich\UploaderBundle\Metadata\ClassMetadata {#1336
+name: "App\Entity\Rooms"
+methodMetadata: []
+propertyMetadata: []
+fileResources: array:1 [
0 => "/var/www/vhost/allons-maurice/app/src/Entity/Rooms.php"
]
+createdAt: 1738921302
+fields: array:1 [
"imageFile" => array:7 [
"mapping" => "featured_rooms"
"propertyName" => "imageFile"
"fileNameProperty" => "featuredImage"
"size" => null
"mimeType" => null
"originalName" => null
"dimensions" => null
]
]
}
]
}
"App\Entity\Hotels" => Metadata\ClassHierarchyMetadata {#13980
+classMetadata: array:1 [
"App\Entity\Hotels" => Vich\UploaderBundle\Metadata\ClassMetadata {#13981
+name: "App\Entity\Hotels"
+methodMetadata: []
+propertyMetadata: []
+fileResources: array:1 [
0 => "/var/www/vhost/allons-maurice/app/src/Entity/Hotels.php"
]
+createdAt: 1738921302
+fields: array:1 [
"imageFile" => array:7 [
"mapping" => "featured_hotels"
"propertyName" => "imageFile"
"fileNameProperty" => "featuredImage"
"size" => null
"mimeType" => null
"originalName" => null
"dimensions" => null
]
]
}
]
}
"App\Entity\Slides" => Metadata\ClassHierarchyMetadata {#14279
+classMetadata: array:1 [
"App\Entity\Slides" => Vich\UploaderBundle\Metadata\ClassMetadata {#14280
+name: "App\Entity\Slides"
+methodMetadata: []
+propertyMetadata: []
+fileResources: array:1 [
0 => "/var/www/vhost/allons-maurice/app/src/Entity/Slides.php"
]
+createdAt: 1738921302
+fields: array:1 [
"imageFile" => array:7 [
"mapping" => "slides"
"propertyName" => "imageFile"
"fileNameProperty" => "bgImage"
"size" => null
"mimeType" => null
"originalName" => null
"dimensions" => null
]
]
}
]
}
"App\Entity\Images" => Metadata\ClassHierarchyMetadata {#14475
+classMetadata: array:1 [
"App\Entity\Images" => Vich\UploaderBundle\Metadata\ClassMetadata {#14476
+name: "App\Entity\Images"
+methodMetadata: []
+propertyMetadata: []
+fileResources: array:1 [
0 => "/var/www/vhost/allons-maurice/app/src/Entity/Images.php"
]
+createdAt: 1738921302
+fields: array:1 [
"imageFile" => array:7 [
"mapping" => "medias"
"propertyName" => "imageFile"
"fileNameProperty" => "imageName"
"size" => "size"
"mimeType" => "type"
"originalName" => null
"dimensions" => "dimensions"
]
]
}
]
}
"App\Entity\Posts" => Metadata\ClassHierarchyMetadata {#14477
+classMetadata: array:1 [
"App\Entity\Posts" => Vich\UploaderBundle\Metadata\ClassMetadata {#14429
+name: "App\Entity\Posts"
+methodMetadata: []
+propertyMetadata: []
+fileResources: array:1 [
0 => "/var/www/vhost/allons-maurice/app/src/Entity/Posts.php"
]
+createdAt: 1738921302
+fields: array:1 [
"imageFile" => array:7 [
"mapping" => "featured_posts"
"propertyName" => "imageFile"
"fileNameProperty" => "featuredImage"
"size" => null
"mimeType" => null
"originalName" => null
"dimensions" => null
]
]
}
]
}
]
-loadedClassMetadata: array:5 [
"App\Entity\Rooms" => Vich\UploaderBundle\Metadata\ClassMetadata {#1336}
"App\Entity\Hotels" => Vich\UploaderBundle\Metadata\ClassMetadata {#13981}
"App\Entity\Slides" => Vich\UploaderBundle\Metadata\ClassMetadata {#14280}
"App\Entity\Images" => Vich\UploaderBundle\Metadata\ClassMetadata {#14476}
"App\Entity\Posts" => Vich\UploaderBundle\Metadata\ClassMetadata {#14429}
]
-hierarchyMetadataClass: "Metadata\ClassHierarchyMetadata"
-includeInterfaces: false
-debug: true
}
}
-resolver: Vich\UploaderBundle\Mapping\PropertyMappingResolver {#742
-container: ContainerUIpB4Xl\App_KernelDevDebugContainer {#42 …20}
-mappings: array:5 [
"featured_hotels" => array:8 [
"uri_prefix" => "/uploads/hotels"
"upload_destination" => "/var/www/vhost/allons-maurice/app/public/uploads/hotels"
"namer" => array:2 [
"service" => "Vich\UploaderBundle\Naming\UniqidNamer.featured_hotels"
"options" => []
]
"directory_namer" => array:2 [
"service" => "vich_uploader.namer_directory_property"
"options" => array:2 [
"property" => "mediaDirSlug"
"transliterate" => true
]
]
"delete_on_remove" => true
"delete_on_update" => true
"inject_on_load" => false
"db_driver" => "orm"
]
"featured_rooms" => array:8 [
"uri_prefix" => "/uploads/rooms"
"upload_destination" => "/var/www/vhost/allons-maurice/app/public/uploads/rooms"
"namer" => array:2 [
"service" => "Vich\UploaderBundle\Naming\UniqidNamer.featured_rooms"
"options" => []
]
"directory_namer" => array:2 [
"service" => "vich_uploader.namer_directory_property"
"options" => array:2 [
"property" => "mediaDirSlug"
"transliterate" => true
]
]
"delete_on_remove" => true
"delete_on_update" => true
"inject_on_load" => false
"db_driver" => "orm"
]
"featured_posts" => array:8 [
"uri_prefix" => "/uploads/posts"
"upload_destination" => "/var/www/vhost/allons-maurice/app/public/uploads/posts"
"namer" => array:2 [
"service" => "Vich\UploaderBundle\Naming\UniqidNamer.featured_posts"
"options" => []
]
"directory_namer" => array:2 [
"service" => "Vich\UploaderBundle\Naming\CurrentDateTimeDirectoryNamer"
"options" => array:2 [
"date_time_format" => "Y/m/d"
"date_time_property" => "uploadedAt"
]
]
"delete_on_remove" => true
"delete_on_update" => true
"inject_on_load" => false
"db_driver" => "orm"
]
"medias" => array:8 [
"uri_prefix" => "/uploads/medias"
"upload_destination" => "/var/www/vhost/allons-maurice/app/public/uploads/medias"
"namer" => array:2 [
"service" => "Vich\UploaderBundle\Naming\UniqidNamer.medias"
"options" => []
]
"directory_namer" => array:2 [
"service" => "Vich\UploaderBundle\Naming\CurrentDateTimeDirectoryNamer"
"options" => array:2 [
"date_time_format" => "Y/m/d"
"date_time_property" => "uploadedAt"
]
]
"delete_on_remove" => true
"delete_on_update" => true
"inject_on_load" => false
"db_driver" => "orm"
]
"slides" => array:8 [
"uri_prefix" => "/uploads/slides"
"upload_destination" => "/var/www/vhost/allons-maurice/app/public/uploads/slides"
"namer" => array:2 [
"service" => "Vich\UploaderBundle\Naming\UniqidNamer.slides"
"options" => []
]
"directory_namer" => array:2 [
"service" => null
"options" => null
]
"delete_on_remove" => true
"delete_on_update" => true
"inject_on_load" => false
"db_driver" => "orm"
]
]
-defaultFilenameAttributeSuffix: "_name"
}
}
}
}
+hotel: null
+stars: null
+dateRange: "22/03/2025 - 26/03/2025"
+fromAt: DateTimeImmutable @1742601600 {#14664
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+toAt: DateTimeImmutable @1743033540 {#14665
date: 2025-03-26 23:59:00.0 UTC (+00:00)
}
+zone: null
+honeymoon: false
+ageLimits: array:3 [
"baby" => 5
"child" => 13
"teen" => 18
]
+nights: null
+chambers: []
+stay_rooms: []
}