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 : Sands Suites Resort & Spa - Chambre : #22 - Superior 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 {#1961
+rpId: 2279
+adultsPrice: 410
+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" => 410
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 410
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 410
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 410
"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 : Sands Suites Resort & Spa - Chambre : #23 - Deluxe 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 {#2007
+rpId: 2286
+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 : Sands Suites Resort & Spa - Chambre : #24 - Beachfront 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 {#2028
+rpId: 2293
+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 : Sands Suites Resort & Spa - Chambre : #25 - Exclusive 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 {#2049
+rpId: 2300
+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 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" => 22
"room_picture" => "/uploads/rooms/22/666bd96c0c24f150323897.jpg"
"room_name" => "Superior Suite"
"room_slug" => "superior-suite"
"room_description" => "Des suites spacieuses de style moderne joliment décorées et éclairées. Afin de vous offrir une expérience luxueuse, elles disposent de grands lits, de canapés et d’un balcon privatif faisant face à l’océan. Ces chambres étant situées aux premier et deuxième étages, elles vous offrent une superbe vue sur le lagon bleu azur."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2279
"adult_amount" => 1640
"children_amount" => 0
"basis_amount" => 1640
"mandatoryExtraId" => null
"default_extra_label" => "DEMI PENSION"
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 410
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 410
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 410
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 410
"kids_price" => 0
]
]
]
]
1 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 23
"room_picture" => "/uploads/rooms/23/666bda2555092060530053.jpg"
"room_name" => "Deluxe Suite"
"room_slug" => "deluxe-suite"
"room_description" => "Leur terrasse privative vous permet de vous installer confortablement au soleil. Avec leur grande chambre à coucher aux tons neutres rehaussée d’une touche de couleur vive et leurs canapés, depuis lesquels vous profiterez d’une vue imprenable sur l’océan, ces suites vous garantissent un confort cinq étoiles."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2286
"adult_amount" => 1720
"children_amount" => 0
"basis_amount" => 1720
"mandatoryExtraId" => null
"default_extra_label" => "DEMI PENSION"
"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
]
]
]
]
2 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 24
"room_picture" => "/uploads/rooms/24/666bda9a245bc503124079.jpg"
"room_name" => "Beachfront Suite"
"room_slug" => "beachfront-suite"
"room_description" => """
Emplacement en bord de plage privilégié Vue sur la baie de Tamarin Demi-pension possible\r\n
\r\n
Chaque suite dispose d’une terrasse ou d’un balcon privatif et offre l’une des vues les plus spectaculaires de l’île. Ces suites spacieuses sont de véritables havres de paix où vous pourrez vous détendre à toute heure de la journée, profiter du confort d’un grand salon et admirer la superbe baie de Tamarin.
"""
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2293
"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
]
]
]
]
3 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 25
"room_picture" => "/uploads/rooms/25/666bdafc66b3c703347467.jpg"
"room_name" => "Exclusive Suite"
"room_slug" => "exclusive-suite"
"room_description" => "Disposant de deux chambres à coucher, d’un coin salon séparé et de deux balcons offrant une vue splendide sur l’océan Indien, cette suite vous permet de profiter pleinement de vos vacances grâce à un confort incomparable. Avec sa chambre supplémentaire, elle est idéale pour les familles ou les couples en quête d’un séjour d’exception."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 2300
"adult_amount" => 2720
"children_amount" => 0
"basis_amount" => 2720
"mandatoryExtraId" => null
"default_extra_label" => "DEMI PENSION"
"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 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 {#987
-marginRate: 20
-id: 22
-name: "Superior Suite"
-slug: "superior-suite"
-picture: "/uploads/rooms/22/666bd96c0c24f150323897.jpg"
-description: "Des suites spacieuses de style moderne joliment décorées et éclairées. Afin de vous offrir une expérience luxueuse, elles disposent de grands lits, de canapés et d’un balcon privatif faisant face à l’océan. Ces chambres étant situées aux premier et deuxième étages, elles vous offrent une superbe vue sur le lagon bleu azur."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: "DEMI PENSION"
-mandatoryExtraId: 169
-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" => 410
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 410
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 410
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 410
"kids_price" => 0
]
]
"amount" => 1640
]
]
-totalRoomAmount: 1640.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:1 [
0 => App\DTO\ExtraStayDTO {#2073
-marginRate: 20
+extraId: 169
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1640.0
+totalStayAmountWoDiscount: 1640.0
+totalStayAmount: 1640.0
+finalAmountWoDiscount: 1968.0
+finalAmount: 1968.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
1 => App\DTO\RoomStayDTO {#2024
-marginRate: 20
-id: 23
-name: "Deluxe Suite"
-slug: "deluxe-suite"
-picture: "/uploads/rooms/23/666bda2555092060530053.jpg"
-description: "Leur terrasse privative vous permet de vous installer confortablement au soleil. Avec leur grande chambre à coucher aux tons neutres rehaussée d’une touche de couleur vive et leurs canapés, depuis lesquels vous profiterez d’une vue imprenable sur l’océan, ces suites vous garantissent un confort cinq étoiles."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: "DEMI PENSION"
-mandatoryExtraId: 169
-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 {#2076
-marginRate: 20
+extraId: 169
+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: []
}
2 => App\DTO\RoomStayDTO {#2045
-marginRate: 20
-id: 24
-name: "Beachfront Suite"
-slug: "beachfront-suite"
-picture: "/uploads/rooms/24/666bda9a245bc503124079.jpg"
-description: """
Emplacement en bord de plage privilégié Vue sur la baie de Tamarin Demi-pension possible\r\n
\r\n
Chaque suite dispose d’une terrasse ou d’un balcon privatif et offre l’une des vues les plus spectaculaires de l’île. Ces suites spacieuses sont de véritables havres de paix où vous pourrez vous détendre à toute heure de la journée, profiter du confort d’un grand salon et admirer la superbe baie de Tamarin.
"""
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: "DEMI PENSION"
-mandatoryExtraId: 169
-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:1 [
0 => App\DTO\ExtraStayDTO {#2066
-marginRate: 20
+extraId: 169
+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: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
3 => App\DTO\RoomStayDTO {#2044
-marginRate: 20
-id: 25
-name: "Exclusive Suite"
-slug: "exclusive-suite"
-picture: "/uploads/rooms/25/666bdafc66b3c703347467.jpg"
-description: "Disposant de deux chambres à coucher, d’un coin salon séparé et de deux balcons offrant une vue splendide sur l’océan Indien, cette suite vous permet de profiter pleinement de vos vacances grâce à un confort incomparable. Avec sa chambre supplémentaire, elle est idéale pour les familles ou les couples en quête d’un séjour d’exception."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: "DEMI PENSION"
-mandatoryExtraId: 169
-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:1 [
0 => App\DTO\ExtraStayDTO {#2079
-marginRate: 20
+extraId: 169
+name: "Base Demi pension"
+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: []
}
]
-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 {#2252
-elements: array:6 [
0 => App\Entity\Offers {#2101
-id: 28
-title: "Free Nights Offer 2=3"
-type: "LongStay"
-hotel: App\Entity\Hotels {#948
-id: 4
-name: "Sands Suites Resort & Spa"
-description: """
Le Sands Suites Resort & Spa est située sur la plage la plus préservée de Flic en Flac.\r\n
Située sur la côte ouest de l’île Maurice, le complexe jouit d’une situation privilégiée et offre une vue panoramique sur le lagon turquoise de la baie de Tamarin et sur l’imposante montagne du Morne.\r\n
\r\n
\r\n
\r\n
greenglobe.com\r\n
Certifiée Green Globe, cet hôtel de charme offre une expérience exquise dans une atmosphère paisible et sereine. \r\n
Cet environnement éthéré est dû aux incroyables paysages naturels ainsi qu’à l’architecture et au décor uniques du complexe, qui contribuent tous à faire de ce lieu un véritable coin de paradis sur la côte ouest de l’île.
"""
-website: "https://sands.mu/"
-stars: 4
-youtubeVideoId: "GH2hMziS_84"
-phone: "+230 403 1200"
-email: "info@sands.mu"
-active: true
-gmapUrl: "<iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3741.609756838938!2d57.36923311217644!3d-20.31641388108213!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x217c4179ae900001%3A0x3af8e3a7a6c4a114!2sSands%20Suites%20Resort%20%26%20Spa!5e0!3m2!1sfr!2sfr!4v1718968719570!5m2!1sfr!2sfr" width="100%" height="600" style="border:0;" allowfullscreen="" loading="lazy" referrerpolicy="no-referrer-when-downgrade"></iframe>"
-zone: "Ouest"
-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 {#950
#collection: Doctrine\Common\Collections\ArrayCollection {#951
-elements: array:4 [
0 => App\Entity\Rooms {#1365
-id: 22
-name: "Superior Suite"
-description: "Des suites spacieuses de style moderne joliment décorées et éclairées. Afin de vous offrir une expérience luxueuse, elles disposent de grands lits, de canapés et d’un balcon privatif faisant face à l’océan. Ces chambres étant situées aux premier et deuxième étages, elles vous offrent une superbe vue sur le lagon bleu azur."
-active: true
-hotel: App\Entity\Hotels {#948}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#1966
-elements: array:1 [
0 => App\Entity\RoomPrices {#1332
-id: 2279
-title: "Superior Suite"
-room: App\Entity\Rooms {#1365}
-quantity: 52
-stayStartedAt: DateTimeImmutable @1735862400 {#1370
date: 2025-01-03 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1745971200 {#1369
date: 2025-04-30 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1368
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1367
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "410.00"
-singleOccupancy: "410.00"
-tripleOccupancy: "130.00"
-active: true
-extraBaby: null
-extraChild: 0.0
-extraTeen: null
-defaultExtraLabel: "DEMI PENSION"
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1363
#collection: Doctrine\Common\Collections\ArrayCollection {#1362
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1365}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1173 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1358
#collection: Doctrine\Common\Collections\ArrayCollection {#1356
-elements: array:3 [
0 => App\Entity\RoomCapacities {#1669
-id: 1716
-room: App\Entity\Rooms {#1365}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#1659
-id: 1717
-room: App\Entity\Rooms {#1365}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#1664
-id: 1718
-room: App\Entity\Rooms {#1365}
-adults: 3
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:3 [ …3]
-owner: App\Entity\Rooms {#1365}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1361 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1301
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1733400954 {#1310
date: 2024-12-05 12:15:54.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666bd96c0c24f150323897.jpg"
-gallery: App\Entity\Galleries {#1334
-id: 175
-hotel: null
-room: App\Entity\Rooms {#1365}
-images: Doctrine\ORM\PersistentCollection {#1336
#collection: Doctrine\Common\Collections\ArrayCollection {#1331
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1334}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1105 …}
}
-title: "Sands suite superieure"
}
-mediaDirSlug: "22"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "superior-suite"
}
1 => App\Entity\Rooms {#1317
-id: 23
-name: "Deluxe Suite"
-description: "Leur terrasse privative vous permet de vous installer confortablement au soleil. Avec leur grande chambre à coucher aux tons neutres rehaussée d’une touche de couleur vive et leurs canapés, depuis lesquels vous profiterez d’une vue imprenable sur l’océan, ces suites vous garantissent un confort cinq étoiles."
-active: true
-hotel: App\Entity\Hotels {#948}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#1984
-elements: array:1 [
0 => App\Entity\RoomPrices {#1327
-id: 2286
-title: "Deluxe Suite"
-room: App\Entity\Rooms {#1317}
-quantity: 26
-stayStartedAt: DateTimeImmutable @1735862400 {#1323
date: 2025-01-03 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1745971200 {#1339
date: 2025-04-30 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1340
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1316
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "430.00"
-singleOccupancy: "430.00"
-tripleOccupancy: "130.00"
-active: true
-extraBaby: null
-extraChild: 0.0
-extraTeen: null
-defaultExtraLabel: "DEMI PENSION"
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1318
#collection: Doctrine\Common\Collections\ArrayCollection {#1319
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1317}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1173 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1320
#collection: Doctrine\Common\Collections\ArrayCollection {#1321
-elements: array:3 [
0 => App\Entity\RoomCapacities {#1662
-id: 1733
-room: App\Entity\Rooms {#1317}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#1663
-id: 1734
-room: App\Entity\Rooms {#1317}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#1660
-id: 1735
-room: App\Entity\Rooms {#1317}
-adults: 3
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:3 [ …3]
-owner: App\Entity\Rooms {#1317}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1361 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1337
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1733400961 {#1324
date: 2024-12-05 12:16:01.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666bda2555092060530053.jpg"
-gallery: App\Entity\Galleries {#1338
-id: 176
-hotel: null
-room: App\Entity\Rooms {#1317}
-images: Doctrine\ORM\PersistentCollection {#1276
#collection: Doctrine\Common\Collections\ArrayCollection {#1277
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1338}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1105 …}
}
-title: "Sands deluxe suite"
}
-mediaDirSlug: "23"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "deluxe-suite"
}
2 => App\Entity\Rooms {#1286
-id: 24
-name: "Beachfront Suite"
-description: """
Emplacement en bord de plage privilégié Vue sur la baie de Tamarin Demi-pension possible\r\n
\r\n
Chaque suite dispose d’une terrasse ou d’un balcon privatif et offre l’une des vues les plus spectaculaires de l’île. Ces suites spacieuses sont de véritables havres de paix où vous pourrez vous détendre à toute heure de la journée, profiter du confort d’un grand salon et admirer la superbe baie de Tamarin.
"""
-active: true
-hotel: App\Entity\Hotels {#948}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#1960
-elements: array:1 [
0 => App\Entity\RoomPrices {#1296
-id: 2293
-title: "Beachfront Suite"
-room: App\Entity\Rooms {#1286}
-quantity: 12
-stayStartedAt: DateTimeImmutable @1735862400 {#1281
date: 2025-01-03 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1745971200 {#1283
date: 2025-04-30 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1284
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1285
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "520.00"
-singleOccupancy: "520.00"
-tripleOccupancy: "130.00"
-active: true
-extraBaby: null
-extraChild: 0.0
-extraTeen: null
-defaultExtraLabel: "DEMI PENSION"
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1288
#collection: Doctrine\Common\Collections\ArrayCollection {#1290
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1286}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1173 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1291
#collection: Doctrine\Common\Collections\ArrayCollection {#1292
-elements: array:3 [
0 => App\Entity\RoomCapacities {#1653
-id: 1747
-room: App\Entity\Rooms {#1286}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#1656
-id: 1748
-room: App\Entity\Rooms {#1286}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#1657
-id: 1749
-room: App\Entity\Rooms {#1286}
-adults: 3
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:3 [ …3]
-owner: App\Entity\Rooms {#1286}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1361 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1278
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1733400974 {#1279
date: 2024-12-05 12:16:14.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666bda9a245bc503124079.jpg"
-gallery: App\Entity\Galleries {#1297
-id: 177
-hotel: null
-room: App\Entity\Rooms {#1286}
-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 {#1105 …}
}
-title: "Sands beachfront suite"
}
-mediaDirSlug: "24"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "beachfront-suite"
}
3 => App\Entity\Rooms {#1308
-id: 25
-name: "Exclusive Suite"
-description: "Disposant de deux chambres à coucher, d’un coin salon séparé et de deux balcons offrant une vue splendide sur l’océan Indien, cette suite vous permet de profiter pleinement de vos vacances grâce à un confort incomparable. Avec sa chambre supplémentaire, elle est idéale pour les familles ou les couples en quête d’un séjour d’exception."
-active: true
-hotel: App\Entity\Hotels {#948}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#2017
-elements: array:1 [
0 => App\Entity\RoomPrices {#1476
-id: 2300
-title: "Exclusive Suite"
-room: App\Entity\Rooms {#1308}
-quantity: 1
-stayStartedAt: DateTimeImmutable @1735862400 {#1303
date: 2025-01-03 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1745971200 {#1304
date: 2025-04-30 00:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1305
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1306
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "680.00"
-singleOccupancy: "680.00"
-tripleOccupancy: "130.00"
-active: true
-extraBaby: null
-extraChild: 0.0
-extraTeen: null
-defaultExtraLabel: "DEMI PENSION"
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1282
#collection: Doctrine\Common\Collections\ArrayCollection {#1181
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1308}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1173 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1315
#collection: Doctrine\Common\Collections\ArrayCollection {#1195
-elements: array:3 [
0 => App\Entity\RoomCapacities {#1578
-id: 1762
-room: App\Entity\Rooms {#1308}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#1751
-id: 1763
-room: App\Entity\Rooms {#1308}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#1676
-id: 3474
-room: App\Entity\Rooms {#1308}
-adults: 3
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:3 [ …3]
-owner: App\Entity\Rooms {#1308}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1361 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1300
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1733400990 {#1302
date: 2024-12-05 12:16:30.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666bdafc66b3c703347467.jpg"
-gallery: App\Entity\Galleries {#1474
-id: 178
-hotel: null
-room: App\Entity\Rooms {#1308}
-images: Doctrine\ORM\PersistentCollection {#1468
#collection: Doctrine\Common\Collections\ArrayCollection {#1462
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1474}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1105 …}
}
-title: "Sands suite exclusive"
}
-mediaDirSlug: "25"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "exclusive-suite"
}
]
}
#initialized: true
-snapshot: array:4 [ …4]
-owner: App\Entity\Hotels {#948}
-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: "14:00"
-checkOutTime: "11:00"
-babyAgeMax: "4"
-childAgeMax: "11"
-teenAgeMax: "99"
-extraCharges: Doctrine\ORM\PersistentCollection {#955
#collection: Doctrine\Common\Collections\ArrayCollection {#957
-elements: array:2 [
0 => App\Entity\ExtraCharges {#2067
-id: 169
-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 {#948}
}
1 => App\Entity\ExtraCharges {#2078
-id: 197
-title: "Nouvel An"
-description: null
-adultExtra: 230.0
-babyExtra: null
-childExtra: null
-teenExtra: 230.0
-stayStartedAt: DateTimeImmutable @1735603200 {#2075
date: 2024-12-31 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1735689600 {#2077
date: 2025-01-01 00:00:00.0 UTC (+00:00)
}
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#948}
}
]
}
#initialized: true
-snapshot: array:2 [ …2]
-owner: App\Entity\Hotels {#948}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#876 …}
-backRefFieldName: "hotel"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#952 …}
}
-imageFile: null
-featuredImage: "66965dbe6119f172273068.jpg"
-gallery: App\Entity\Galleries {#1103
-id: 53
-hotel: App\Entity\Hotels {#948}
-room: null
-images: Doctrine\ORM\PersistentCollection {#1109
#collection: Doctrine\Common\Collections\ArrayCollection {#1108
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1103}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1105 …}
}
-title: "Hotel Sands"
}
-mediaDirSlug: null
-offers: Doctrine\Common\Collections\ArrayCollection {#2252}
-highlighted: true
-services: array:1 [
0 => ""
]
-hlStartAt: DateTimeImmutable @1733011200 {#984
date: 2024-12-01 00:00:00.0 UTC (+00:00)
}
-hlEndAt: DateTimeImmutable @1733616000 {#944
date: 2024-12-08 00:00:00.0 UTC (+00:00)
}
-slug: "sands-suites-resort-spa"
}
-description: null
-stayStartAt: DateTimeImmutable @1704067200 {#2093
date: 2024-01-01 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1761868800 {#2090
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1704067200 {#2092
date: 2024-01-01 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1761868800 {#2098
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-reference: "Free Nights Offer 2=3"
-minNights: 3
-maxNights: 3
-earlyBookingDays: 3
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#2103
#collection: Doctrine\Common\Collections\ArrayCollection {#2104
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2101}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1077 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 33
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#2105
#collection: Doctrine\Common\Collections\ArrayCollection {#2106
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2101}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1083 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#958 …}
}
-offers: Doctrine\ORM\PersistentCollection {#2161
#collection: Doctrine\Common\Collections\ArrayCollection {#2162
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2101}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1087 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#958 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#2163
#collection: Doctrine\Common\Collections\ArrayCollection {#2164
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2101}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1089 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#952 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#2165
#collection: Doctrine\Common\Collections\ArrayCollection {#2166
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2101}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1095 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#952 …}
}
-extrasDiscount: null
-priority: 2
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
1 => App\Entity\Offers {#2171
-id: 29
-title: "Free Nights Offer 3=4"
-type: "LongStay"
-hotel: App\Entity\Hotels {#948}
-description: null
-stayStartAt: DateTimeImmutable @1704067200 {#2167
date: 2024-01-01 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1761868800 {#2168
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1704067200 {#2169
date: 2024-01-01 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1761868800 {#2170
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-reference: "Free Nights Offer 3=4"
-minNights: 4
-maxNights: 4
-earlyBookingDays: 4
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#2172
#collection: Doctrine\Common\Collections\ArrayCollection {#2173
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2171}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1077 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 25
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#2174
#collection: Doctrine\Common\Collections\ArrayCollection {#2175
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2171}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1083 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#958 …}
}
-offers: Doctrine\ORM\PersistentCollection {#2176
#collection: Doctrine\Common\Collections\ArrayCollection {#2177
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2171}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1087 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#958 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#2178
#collection: Doctrine\Common\Collections\ArrayCollection {#2179
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2171}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1089 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#952 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#2180
#collection: Doctrine\Common\Collections\ArrayCollection {#2181
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2171}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1095 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#952 …}
}
-extrasDiscount: null
-priority: 2
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
2 => App\Entity\Offers {#2186
-id: 30
-title: "Free Nights Offer 4=6"
-type: "LongStay"
-hotel: App\Entity\Hotels {#948}
-description: null
-stayStartAt: DateTimeImmutable @1704067200 {#2182
date: 2024-01-01 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1761868800 {#2183
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1704067200 {#2184
date: 2024-01-01 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1761868800 {#2185
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-reference: "Free Nights Offer 4=6"
-minNights: 6
-maxNights: 6
-earlyBookingDays: 6
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#2187
#collection: Doctrine\Common\Collections\ArrayCollection {#2188
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2186}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1077 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 33
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#2189
#collection: Doctrine\Common\Collections\ArrayCollection {#2190
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2186}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1083 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#958 …}
}
-offers: Doctrine\ORM\PersistentCollection {#2191
#collection: Doctrine\Common\Collections\ArrayCollection {#2192
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2186}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1087 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#958 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#2193
#collection: Doctrine\Common\Collections\ArrayCollection {#2194
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2186}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1089 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#952 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#2195
#collection: Doctrine\Common\Collections\ArrayCollection {#2196
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2186}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1095 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#952 …}
}
-extrasDiscount: null
-priority: 2
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
3 => App\Entity\Offers {#2201
-id: 31
-title: "EARLY BOOKING Sands"
-type: "EarlyBooking"
-hotel: App\Entity\Hotels {#948}
-description: null
-stayStartAt: DateTimeImmutable @1704067200 {#2197
date: 2024-01-01 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1761868800 {#2198
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1704067200 {#2199
date: 2024-01-01 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1761868800 {#2200
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-reference: "EB60"
-minNights: 5
-maxNights: null
-earlyBookingDays: 60
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#2202
#collection: Doctrine\Common\Collections\ArrayCollection {#2203
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2201}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1077 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 15
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#2204
#collection: Doctrine\Common\Collections\ArrayCollection {#2205
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2201}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1083 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#958 …}
}
-offers: Doctrine\ORM\PersistentCollection {#2206
#collection: Doctrine\Common\Collections\ArrayCollection {#2207
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2201}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1087 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#958 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#2208
#collection: Doctrine\Common\Collections\ArrayCollection {#2209
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2201}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1089 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#952 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#2210
#collection: Doctrine\Common\Collections\ArrayCollection {#2211
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2201}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1095 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#952 …}
}
-extrasDiscount: null
-priority: 2
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
4 => App\Entity\Offers {#2216
-id: 32
-title: "Free Nights Offer 5=7"
-type: "LongStay"
-hotel: App\Entity\Hotels {#948}
-description: null
-stayStartAt: DateTimeImmutable @1704067200 {#2212
date: 2024-01-01 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1761868800 {#2213
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1704067200 {#2214
date: 2024-01-01 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1761868800 {#2215
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-reference: "Free Nights Offer 5=7"
-minNights: 7
-maxNights: 7
-earlyBookingDays: 7
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#2217
#collection: Doctrine\Common\Collections\ArrayCollection {#2218
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2216}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1077 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 28
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#2219
#collection: Doctrine\Common\Collections\ArrayCollection {#2220
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2216}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1083 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#958 …}
}
-offers: Doctrine\ORM\PersistentCollection {#2221
#collection: Doctrine\Common\Collections\ArrayCollection {#2222
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2216}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1087 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#958 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#2223
#collection: Doctrine\Common\Collections\ArrayCollection {#2224
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2216}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1089 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#952 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#2225
#collection: Doctrine\Common\Collections\ArrayCollection {#2226
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2216}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1095 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#952 …}
}
-extrasDiscount: null
-priority: 2
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
5 => App\Entity\Offers {#2231
-id: 200
-title: "Free Nights Offer 4=5"
-type: "LongStay"
-hotel: App\Entity\Hotels {#948}
-description: null
-stayStartAt: DateTimeImmutable @1704067200 {#2227
date: 2024-01-01 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1761868800 {#2228
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1704067200 {#2229
date: 2024-01-01 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1761868800 {#2230
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-reference: "Free Nights Offer 4=5"
-minNights: 5
-maxNights: 5
-earlyBookingDays: null
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#2232
#collection: Doctrine\Common\Collections\ArrayCollection {#2233
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2231}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1077 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 20
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#2234
#collection: Doctrine\Common\Collections\ArrayCollection {#2235
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2231}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1083 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#958 …}
}
-offers: Doctrine\ORM\PersistentCollection {#2236
#collection: Doctrine\Common\Collections\ArrayCollection {#2237
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2231}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1087 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#958 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#2238
#collection: Doctrine\Common\Collections\ArrayCollection {#2239
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2231}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1089 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#952 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#2240
#collection: Doctrine\Common\Collections\ArrayCollection {#2241
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#2231}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1095 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#952 …}
}
-extrasDiscount: null
-priority: 2
-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;
}
"30 - Free Nights Offer 4=6"
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;
}
"31 - EARLY BOOKING Sands(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 556:
if ($offer_min_nights) {
if($stay_nights < $offer_min_nights){
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle(), 'Min nights failure.');
}
return $this;
}
"32 - Free Nights Offer 5=7"
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 556:
if ($offer_min_nights) {
if($stay_nights < $offer_min_nights){
if ($this->debug) {
dump($offer->getId() .' - ' . $offer->getTitle(), 'Min nights failure.');
}
return $this;
}
"200 - Free Nights Offer 4=5"
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:2 [
0 => App\DTO\PromotionDTO {#2397
-debug: true
+id: 28
+title: "Free Nights Offer 2=3"
+description: null
+type: "LongStay"
+reference: "Free Nights Offer 2=3"
+from: DateTimeImmutable @1704067200 {#2093
date: 2024-01-01 00:00:00.0 UTC (+00:00)
}
+to: DateTimeImmutable @1761868800 {#2090
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
+earlyBookingDays: 3
+minNights: 3
+maxNights: 3
+discountRate: 33
+discountFamilyRates: []
+combinableRate: null
+priority: 2
+extrasDiscountRate: null
+isAllRooms: true
+isCombinable: false
+selectedRoomsIDs: []
+selectedExtrasIDs: []
+selectedOffersIDs: []
+selectedExtrasDiscountIDs: []
}
1 => App\DTO\PromotionDTO {#2401
-debug: true
+id: 29
+title: "Free Nights Offer 3=4"
+description: null
+type: "LongStay"
+reference: "Free Nights Offer 3=4"
+from: DateTimeImmutable @1704067200 {#2167
date: 2024-01-01 00:00:00.0 UTC (+00:00)
}
+to: DateTimeImmutable @1761868800 {#2168
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
+earlyBookingDays: 4
+minNights: 4
+maxNights: 4
+discountRate: 25
+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 : Anelia Resort & Spa - Chambre : #47 - Supérieur 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 {#2775
+rpId: 1812
+adultsPrice: 176
+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" => 176
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 176
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 176
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 176
"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 : Anelia Resort & Spa - Chambre : #48 - Supérieur Vue 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 {#2796
+rpId: 1819
+adultsPrice: 194
+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" => 194
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 194
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 194
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 194
"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 : Anelia Resort & Spa - Chambre : #49 - Anelia Vue 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 {#2817
+rpId: 1826
+adultsPrice: 194
+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" => 194
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 194
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 194
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 194
"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 : Anelia Resort & Spa - Chambre : #50 - 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 {#2838
+rpId: 1833
+adultsPrice: 212
+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" => 212
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 212
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 212
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 212
"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 : Anelia Resort & Spa - Chambre : #51 - Deluxe Vue 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 {#2859
+rpId: 1840
+adultsPrice: 234
+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" => 234
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 234
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 234
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 234
"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" => 47
"room_picture" => "/uploads/rooms/47/673362248ff08812827645.jpg"
"room_name" => "Supérieur"
"room_slug" => "superieur"
"room_description" => "Avec un nouveau design et un nouvel agencement, nos Chambres Supérieures offrent le confort ultime et une vue unique sur le Jardin ou une vue partielle sur la mer ou sur la piscine principale. Ces chambres de 30 m2 sont équipées d'un lit King ou Twin et disposent d'un balcon."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1812
"adult_amount" => 704
"children_amount" => 0
"basis_amount" => 704
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 176
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 176
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 176
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 176
"kids_price" => 0
]
]
]
]
1 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 48
"room_picture" => "/uploads/rooms/48/6733622940478576167511.jpg"
"room_name" => "Supérieur Vue océan"
"room_slug" => "superieur-vue-ocean"
"room_description" => "Avec un nouveau design et un nouvel agencement, nos Chambres Supérieures offrent le confort ultime et une vue splendide sur la mer. Ces chambres de 30 m2 sont équipées d'un lit King ou Twin et disposent d'un balcon."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1819
"adult_amount" => 776
"children_amount" => 0
"basis_amount" => 776
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 194
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 194
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 194
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 194
"kids_price" => 0
]
]
]
]
2 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 49
"room_picture" => "/uploads/rooms/49/67336230002b1675450379.jpg"
"room_name" => "Anelia Vue océan"
"room_slug" => "anelia-vue-ocean"
"room_description" => "Avec un nouveau design et un nouvel agencement, nos chambres Anelia Vue Océan offrent le confort ultime et une vue unique sur l'Océan. Ces chambres de 30 m2 sont équipées d'un lit King ou Twin et disposent 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" => 1826
"adult_amount" => 776
"children_amount" => 0
"basis_amount" => 776
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 194
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 194
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 194
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 194
"kids_price" => 0
]
]
]
]
3 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 50
"room_picture" => "/uploads/rooms/50/666ae4ff0ec55852006002.jpg"
"room_name" => "Deluxe"
"room_slug" => "anelia-deluxe"
"room_description" => "Situées au rez-de-chaussée, nos Chambres Deluxe offrent le confort ultime et une vue unique sur le Jardin ou une vue partielle sur la mer ou sur la piscine principale. Ces chambres de 40 m2 sont équipées d'un lit King ou Twin et d'un canapé-lit, dotées d'une terrasse. Des chambres adaptées aux personnes en fauteuil roulant sont disponibles."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1833
"adult_amount" => 848
"children_amount" => 0
"basis_amount" => 848
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 212
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 212
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 212
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 212
"kids_price" => 0
]
]
]
]
4 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 51
"room_picture" => "/uploads/rooms/51/666ae56e8c403806210284.jpg"
"room_name" => "Deluxe Vue océan"
"room_slug" => "anelia-deluxe-vue-ocean"
"room_description" => "Situées au rez-de-chaussée, nos chambres Deluxe Vue Océan offrent un confort ultime et une vue unique sur l'Océan. Ces chambres de 40 m2 sont équipées d'un lit King ou Twin et d'un canapé-lit, dotées d'une terrasse."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1840
"adult_amount" => 936
"children_amount" => 0
"basis_amount" => 936
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 234
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 234
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 234
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 234
"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 {#2397
-marginRate: 20
-id: 47
-name: "Supérieur"
-slug: "superieur"
-picture: "/uploads/rooms/47/673362248ff08812827645.jpg"
-description: "Avec un nouveau design et un nouvel agencement, nos Chambres Supérieures offrent le confort ultime et une vue unique sur le Jardin ou une vue partielle sur la mer ou sur la piscine principale. Ces chambres de 30 m2 sont équipées d'un lit King ou Twin et disposent d'un balcon."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 176
-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" => 176
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 176
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 176
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 176
"kids_price" => 0
]
]
"amount" => 704
]
]
-totalRoomAmount: 704.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#2878
-marginRate: 20
+extraId: 176
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 704.0
+totalStayAmountWoDiscount: 704.0
+totalStayAmount: 704.0
+finalAmountWoDiscount: 844.8
+finalAmount: 844.8
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#2881
-marginRate: 20
+extraId: 9
+name: "Suppléments repas pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 60
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 240
+kidsExtrasAmount: 0
+stayExtrasAmount: 240
+stayRoomAmount: 704.0
+totalStayAmountWoDiscount: 944.0
+totalStayAmount: 944.0
+finalAmountWoDiscount: 1132.8
+finalAmount: 1132.8
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#2888
-marginRate: 20
+extraId: 10
+name: "Supplément repas all inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 86
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 344
+kidsExtrasAmount: 0
+stayExtrasAmount: 344
+stayRoomAmount: 704.0
+totalStayAmountWoDiscount: 1048.0
+totalStayAmount: 1048.0
+finalAmountWoDiscount: 1257.6
+finalAmount: 1257.6
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
1 => App\DTO\RoomStayDTO {#2834
-marginRate: 20
-id: 48
-name: "Supérieur Vue océan"
-slug: "superieur-vue-ocean"
-picture: "/uploads/rooms/48/6733622940478576167511.jpg"
-description: "Avec un nouveau design et un nouvel agencement, nos Chambres Supérieures offrent le confort ultime et une vue splendide sur la mer. Ces chambres de 30 m2 sont équipées d'un lit King ou Twin et disposent d'un balcon."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 176
-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" => 194
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 194
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 194
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 194
"kids_price" => 0
]
]
"amount" => 776
]
]
-totalRoomAmount: 776.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#2889
-marginRate: 20
+extraId: 176
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 776.0
+totalStayAmountWoDiscount: 776.0
+totalStayAmount: 776.0
+finalAmountWoDiscount: 931.2
+finalAmount: 931.2
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#2890
-marginRate: 20
+extraId: 9
+name: "Suppléments repas pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 60
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 240
+kidsExtrasAmount: 0
+stayExtrasAmount: 240
+stayRoomAmount: 776.0
+totalStayAmountWoDiscount: 1016.0
+totalStayAmount: 1016.0
+finalAmountWoDiscount: 1219.2
+finalAmount: 1219.2
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#2891
-marginRate: 20
+extraId: 10
+name: "Supplément repas all inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 86
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 344
+kidsExtrasAmount: 0
+stayExtrasAmount: 344
+stayRoomAmount: 776.0
+totalStayAmountWoDiscount: 1120.0
+totalStayAmount: 1120.0
+finalAmountWoDiscount: 1344.0
+finalAmount: 1344.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
2 => App\DTO\RoomStayDTO {#2855
-marginRate: 20
-id: 49
-name: "Anelia Vue océan"
-slug: "anelia-vue-ocean"
-picture: "/uploads/rooms/49/67336230002b1675450379.jpg"
-description: "Avec un nouveau design et un nouvel agencement, nos chambres Anelia Vue Océan offrent le confort ultime et une vue unique sur l'Océan. Ces chambres de 30 m2 sont équipées d'un lit King ou Twin et disposent d'un balcon ou d'une terrasse."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 176
-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" => 194
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 194
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 194
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 194
"kids_price" => 0
]
]
"amount" => 776
]
]
-totalRoomAmount: 776.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#2892
-marginRate: 20
+extraId: 176
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 776.0
+totalStayAmountWoDiscount: 776.0
+totalStayAmount: 776.0
+finalAmountWoDiscount: 931.2
+finalAmount: 931.2
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#2893
-marginRate: 20
+extraId: 9
+name: "Suppléments repas pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 60
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 240
+kidsExtrasAmount: 0
+stayExtrasAmount: 240
+stayRoomAmount: 776.0
+totalStayAmountWoDiscount: 1016.0
+totalStayAmount: 1016.0
+finalAmountWoDiscount: 1219.2
+finalAmount: 1219.2
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#2894
-marginRate: 20
+extraId: 10
+name: "Supplément repas all inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 86
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 344
+kidsExtrasAmount: 0
+stayExtrasAmount: 344
+stayRoomAmount: 776.0
+totalStayAmountWoDiscount: 1120.0
+totalStayAmount: 1120.0
+finalAmountWoDiscount: 1344.0
+finalAmount: 1344.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
3 => App\DTO\RoomStayDTO {#2854
-marginRate: 20
-id: 50
-name: "Deluxe"
-slug: "anelia-deluxe"
-picture: "/uploads/rooms/50/666ae4ff0ec55852006002.jpg"
-description: "Situées au rez-de-chaussée, nos Chambres Deluxe offrent le confort ultime et une vue unique sur le Jardin ou une vue partielle sur la mer ou sur la piscine principale. Ces chambres de 40 m2 sont équipées d'un lit King ou Twin et d'un canapé-lit, dotées d'une terrasse. Des chambres adaptées aux personnes en fauteuil roulant sont disponibles."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 176
-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" => 212
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 212
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 212
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 212
"kids_price" => 0
]
]
"amount" => 848
]
]
-totalRoomAmount: 848.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#2895
-marginRate: 20
+extraId: 176
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 848.0
+totalStayAmountWoDiscount: 848.0
+totalStayAmount: 848.0
+finalAmountWoDiscount: 1017.6
+finalAmount: 1017.6
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#2896
-marginRate: 20
+extraId: 9
+name: "Suppléments repas pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 60
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 240
+kidsExtrasAmount: 0
+stayExtrasAmount: 240
+stayRoomAmount: 848.0
+totalStayAmountWoDiscount: 1088.0
+totalStayAmount: 1088.0
+finalAmountWoDiscount: 1305.6
+finalAmount: 1305.6
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#2897
-marginRate: 20
+extraId: 10
+name: "Supplément repas all inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 86
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 344
+kidsExtrasAmount: 0
+stayExtrasAmount: 344
+stayRoomAmount: 848.0
+totalStayAmountWoDiscount: 1192.0
+totalStayAmount: 1192.0
+finalAmountWoDiscount: 1430.4
+finalAmount: 1430.4
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
4 => App\DTO\RoomStayDTO {#2832
-marginRate: 20
-id: 51
-name: "Deluxe Vue océan"
-slug: "anelia-deluxe-vue-ocean"
-picture: "/uploads/rooms/51/666ae56e8c403806210284.jpg"
-description: "Situées au rez-de-chaussée, nos chambres Deluxe Vue Océan offrent un confort ultime et une vue unique sur l'Océan. Ces chambres de 40 m2 sont équipées d'un lit King ou Twin et d'un canapé-lit, dotées d'une terrasse."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 176
-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" => 234
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 234
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 234
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 234
"kids_price" => 0
]
]
"amount" => 936
]
]
-totalRoomAmount: 936.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#2898
-marginRate: 20
+extraId: 176
+name: "Base Demi pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 936.0
+totalStayAmountWoDiscount: 936.0
+totalStayAmount: 936.0
+finalAmountWoDiscount: 1123.2
+finalAmount: 1123.2
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#2899
-marginRate: 20
+extraId: 9
+name: "Suppléments repas pension complète"
+description: null
+stayTotalNights: 4
+dailyAdults: 60
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 240
+kidsExtrasAmount: 0
+stayExtrasAmount: 240
+stayRoomAmount: 936.0
+totalStayAmountWoDiscount: 1176.0
+totalStayAmount: 1176.0
+finalAmountWoDiscount: 1411.2
+finalAmount: 1411.2
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#2900
-marginRate: 20
+extraId: 10
+name: "Supplément repas all inclusive"
+description: null
+stayTotalNights: 4
+dailyAdults: 86
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 344
+kidsExtrasAmount: 0
+stayExtrasAmount: 344
+stayRoomAmount: 936.0
+totalStayAmountWoDiscount: 1280.0
+totalStayAmount: 1280.0
+finalAmountWoDiscount: 1536.0
+finalAmount: 1536.0
+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 : Ocean's Creek - Chambre : #86 - Comfort 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 {#2945
+rpId: 1532
+adultsPrice: 210
+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" => 210
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 210
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 210
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 210
"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 : Ocean's Creek - Chambre : #87 - Superior Room – Forest Facing 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 {#2966
+rpId: 1557
+adultsPrice: 250
+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" => 250
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 250
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 250
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 250
"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 : Ocean's Creek - Chambre : #88 - Superior Room – River / Pool Facing 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 {#2987
+rpId: 1568
+adultsPrice: 280
+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" => 280
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 280
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 280
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 280
"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 : Ocean's Creek - Chambre : #89 - Family Room – Forest Facing 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 {#3008
+rpId: 1573
+adultsPrice: 280
+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" => 280
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 280
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 280
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 280
"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 : Ocean's Creek - Chambre : #90 - Family Room - River / Pool Facing 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 {#3029
+rpId: 1578
+adultsPrice: 310
+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" => 310
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 310
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 310
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 310
"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 : Ocean's Creek - Chambre : #223 - Family 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 {#3050
+rpId: 1550
+adultsPrice: 350
+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" => 350
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 350
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 350
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 350
"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 : Ocean's Creek - Chambre : #224 - 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 {#3071
+rpId: 1543
+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 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" => 86
"room_picture" => "/uploads/rooms/86/666bd83f01060777447590.jpg"
"room_name" => "Comfort"
"room_slug" => "ocean-s-creek-comfort"
"room_description" => "La chambre Confort, d'une superficie de 34 m², est une option d'hébergement adaptée aux voyageurs seuls ou aux couples soucieux de leur budget. Nous avons créé cet espace en pensant à vous, à la recherche de l'équilibre parfait entre confort et style, nécessaire à vos vacances de rêve, votre lune de miel ou votre voyage d'affaires à l'île Maurice."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1532
"adult_amount" => 840
"children_amount" => 0
"basis_amount" => 840
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 210
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 210
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 210
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 210
"kids_price" => 0
]
]
]
]
1 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 87
"room_picture" => "/uploads/rooms/87/671894397bbb6939197022.jpg"
"room_name" => "Superior Room – Forest Facing"
"room_slug" => "superior-room-forest-facing"
"room_description" => "Notre chambre Supérieure dispose d'une vaste surface intérieure de 43 mètres carrés, offrant un espace suffisant pour un séjour confortable pour un couple voyageant avec un enfant. Par rapport à notre confortable chambre Confort, la chambre Supérieure est plus large mais conserve tous les détails de style et les touches élégantes inchangés. Préparez-vous à vous détendre et à vous relaxer dans cette chambre lumineuse et accueillante."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1557
"adult_amount" => 1000
"children_amount" => 0
"basis_amount" => 1000
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 250
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 250
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 250
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 250
"kids_price" => 0
]
]
]
]
2 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 88
"room_picture" => "/uploads/rooms/88/673363829a73e854145537.jpg"
"room_name" => "Superior Room – River / Pool Facing"
"room_slug" => "superior-room-river-pool-facing"
"room_description" => "Notre chambre Supérieure dispose d'une vaste surface intérieure de 43 mètres carrés, offrant un espace suffisant pour un séjour confortable pour un couple voyageant avec un enfant. Par rapport à notre confortable chambre Confort, la chambre Supérieure est plus large mais conserve tous les détails de style et les touches élégantes inchangés. Préparez-vous à vous détendre et à vous relaxer dans cette chambre lumineuse et accueillante."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1568
"adult_amount" => 1120
"children_amount" => 0
"basis_amount" => 1120
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 280
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 280
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 280
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 280
"kids_price" => 0
]
]
]
]
3 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 89
"room_picture" => "/uploads/rooms/89/666843d008ecc978632726.jpg"
"room_name" => "Family Room – Forest Facing"
"room_slug" => "family-room-forest-facing"
"room_description" => "8 Suites Famille, d'une superficie de 59m², comprenant une chambre principale avec un lit King Size (avec salle de bains attenante), une petite chambre séparée pour les enfants (avec une salle d'eau) et un balcon avec vue sur la piscine, la rivière ou la mer."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1573
"adult_amount" => 1120
"children_amount" => 0
"basis_amount" => 1120
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 280
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 280
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 280
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 280
"kids_price" => 0
]
]
]
]
4 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 90
"room_picture" => "/uploads/rooms/90/6733639c007f3920780834.jpg"
"room_name" => "Family Room - River / Pool Facing"
"room_slug" => "family-room-river-pool-facing"
"room_description" => "La chambre familiale, conçue par des familles pour des familles, s'étend sur plus de 43 m². Ces chambres douillettes disposent d'un espace intérieur confortable pour les parents et d'une chambre séparée pour les enfants. Pendant que les adultes peuvent enfin profiter d'une émission de fin de soirée sur le téléviseur grand écran, les enfants peuvent s'endormir en se remémorant les aventures de leur journée et en rêvant d'autres aventures."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1578
"adult_amount" => 1240
"children_amount" => 0
"basis_amount" => 1240
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 310
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 310
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 310
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 310
"kids_price" => 0
]
]
]
]
5 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 223
"room_picture" => "/uploads/rooms/223/673363b48f435422160255.jpg"
"room_name" => "Family Suite"
"room_slug" => "family-suite"
"room_description" => "Notre suite familiale s'étend sur plus de 59 m², ce qui en fait une excellente option pour les familles qui souhaitent passer leurs vacances ensemble. La suite offre la commodité de deux espaces de couchage séparés, garantissant l'intimité de chacun tout en offrant un espace partagé pour passer de bons moments en famille."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1550
"adult_amount" => 1400
"children_amount" => 0
"basis_amount" => 1400
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 350
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 350
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 350
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 350
"kids_price" => 0
]
]
]
]
6 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 224
"room_picture" => "/uploads/rooms/224/673363f0d395c628259571.jpg"
"room_name" => "Suite"
"room_slug" => "suite-2"
"room_description" => "Notre Suite, d'une superficie de 67 m², offre l'espace intérieur le plus spacieux pour vous détendre confortablement avec votre bien-aimé tout en profitant d'un film. Le canapé confortable peut être utilisé comme lit pour une famille avec un jeune enfant, ou il peut être une solution intelligente pour deux amis partageant la chambre, avec le salon séparé par un mur de la chambre principale. Vous trouverez la solution la plus intelligente pour votre plaisir dans chacune de ces suites."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1543
"adult_amount" => 1480
"children_amount" => 0
"basis_amount" => 1480
"mandatoryExtraId" => null
"default_extra_label" => ""
"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 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 {#2887
-marginRate: 20
-id: 86
-name: "Comfort"
-slug: "ocean-s-creek-comfort"
-picture: "/uploads/rooms/86/666bd83f01060777447590.jpg"
-description: "La chambre Confort, d'une superficie de 34 m², est une option d'hébergement adaptée aux voyageurs seuls ou aux couples soucieux de leur budget. Nous avons créé cet espace en pensant à vous, à la recherche de l'équilibre parfait entre confort et style, nécessaire à vos vacances de rêve, votre lune de miel ou votre voyage d'affaires à l'île Maurice."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 172
-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" => 210
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 210
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 210
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 210
"kids_price" => 0
]
]
"amount" => 840
]
]
-totalRoomAmount: 840.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#3092
-marginRate: 20
+extraId: 172
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 840.0
+totalStayAmountWoDiscount: 840.0
+totalStayAmount: 840.0
+finalAmountWoDiscount: 1008.0
+finalAmount: 1008.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#3095
-marginRate: 20
+extraId: 56
+name: "Suppléments repas Demi-pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 60
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 240
+kidsExtrasAmount: 0
+stayExtrasAmount: 240
+stayRoomAmount: 840.0
+totalStayAmountWoDiscount: 1080.0
+totalStayAmount: 1080.0
+finalAmountWoDiscount: 1296.0
+finalAmount: 1296.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#3108
-marginRate: 20
+extraId: 58
+name: "Suppléments repas Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 840.0
+totalStayAmountWoDiscount: 1480.0
+totalStayAmount: 1480.0
+finalAmountWoDiscount: 1776.0
+finalAmount: 1776.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
1 => App\DTO\RoomStayDTO {#3046
-marginRate: 20
-id: 87
-name: "Superior Room – Forest Facing"
-slug: "superior-room-forest-facing"
-picture: "/uploads/rooms/87/671894397bbb6939197022.jpg"
-description: "Notre chambre Supérieure dispose d'une vaste surface intérieure de 43 mètres carrés, offrant un espace suffisant pour un séjour confortable pour un couple voyageant avec un enfant. Par rapport à notre confortable chambre Confort, la chambre Supérieure est plus large mais conserve tous les détails de style et les touches élégantes inchangés. Préparez-vous à vous détendre et à vous relaxer dans cette chambre lumineuse et accueillante."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 172
-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" => 250
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 250
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 250
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 250
"kids_price" => 0
]
]
"amount" => 1000
]
]
-totalRoomAmount: 1000.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#3109
-marginRate: 20
+extraId: 172
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1000.0
+totalStayAmountWoDiscount: 1000.0
+totalStayAmount: 1000.0
+finalAmountWoDiscount: 1200.0
+finalAmount: 1200.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#3110
-marginRate: 20
+extraId: 56
+name: "Suppléments repas Demi-pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 60
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 240
+kidsExtrasAmount: 0
+stayExtrasAmount: 240
+stayRoomAmount: 1000.0
+totalStayAmountWoDiscount: 1240.0
+totalStayAmount: 1240.0
+finalAmountWoDiscount: 1488.0
+finalAmount: 1488.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#3111
-marginRate: 20
+extraId: 58
+name: "Suppléments repas Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 1000.0
+totalStayAmountWoDiscount: 1640.0
+totalStayAmount: 1640.0
+finalAmountWoDiscount: 1968.0
+finalAmount: 1968.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
2 => App\DTO\RoomStayDTO {#3067
-marginRate: 20
-id: 88
-name: "Superior Room – River / Pool Facing"
-slug: "superior-room-river-pool-facing"
-picture: "/uploads/rooms/88/673363829a73e854145537.jpg"
-description: "Notre chambre Supérieure dispose d'une vaste surface intérieure de 43 mètres carrés, offrant un espace suffisant pour un séjour confortable pour un couple voyageant avec un enfant. Par rapport à notre confortable chambre Confort, la chambre Supérieure est plus large mais conserve tous les détails de style et les touches élégantes inchangés. Préparez-vous à vous détendre et à vous relaxer dans cette chambre lumineuse et accueillante."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 172
-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" => 280
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 280
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 280
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 280
"kids_price" => 0
]
]
"amount" => 1120
]
]
-totalRoomAmount: 1120.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#3112
-marginRate: 20
+extraId: 172
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1120.0
+totalStayAmountWoDiscount: 1120.0
+totalStayAmount: 1120.0
+finalAmountWoDiscount: 1344.0
+finalAmount: 1344.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#3113
-marginRate: 20
+extraId: 56
+name: "Suppléments repas Demi-pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 60
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 240
+kidsExtrasAmount: 0
+stayExtrasAmount: 240
+stayRoomAmount: 1120.0
+totalStayAmountWoDiscount: 1360.0
+totalStayAmount: 1360.0
+finalAmountWoDiscount: 1632.0
+finalAmount: 1632.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#3114
-marginRate: 20
+extraId: 58
+name: "Suppléments repas Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 1120.0
+totalStayAmountWoDiscount: 1760.0
+totalStayAmount: 1760.0
+finalAmountWoDiscount: 2112.0
+finalAmount: 2112.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
3 => App\DTO\RoomStayDTO {#3066
-marginRate: 20
-id: 89
-name: "Family Room – Forest Facing"
-slug: "family-room-forest-facing"
-picture: "/uploads/rooms/89/666843d008ecc978632726.jpg"
-description: "8 Suites Famille, d'une superficie de 59m², comprenant une chambre principale avec un lit King Size (avec salle de bains attenante), une petite chambre séparée pour les enfants (avec une salle d'eau) et un balcon avec vue sur la piscine, la rivière ou la mer."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 172
-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" => 280
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 280
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 280
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 280
"kids_price" => 0
]
]
"amount" => 1120
]
]
-totalRoomAmount: 1120.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#3115
-marginRate: 20
+extraId: 172
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1120.0
+totalStayAmountWoDiscount: 1120.0
+totalStayAmount: 1120.0
+finalAmountWoDiscount: 1344.0
+finalAmount: 1344.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#3116
-marginRate: 20
+extraId: 56
+name: "Suppléments repas Demi-pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 60
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 240
+kidsExtrasAmount: 0
+stayExtrasAmount: 240
+stayRoomAmount: 1120.0
+totalStayAmountWoDiscount: 1360.0
+totalStayAmount: 1360.0
+finalAmountWoDiscount: 1632.0
+finalAmount: 1632.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#3117
-marginRate: 20
+extraId: 58
+name: "Suppléments repas Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 1120.0
+totalStayAmountWoDiscount: 1760.0
+totalStayAmount: 1760.0
+finalAmountWoDiscount: 2112.0
+finalAmount: 2112.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
4 => App\DTO\RoomStayDTO {#3044
-marginRate: 20
-id: 90
-name: "Family Room - River / Pool Facing"
-slug: "family-room-river-pool-facing"
-picture: "/uploads/rooms/90/6733639c007f3920780834.jpg"
-description: "La chambre familiale, conçue par des familles pour des familles, s'étend sur plus de 43 m². Ces chambres douillettes disposent d'un espace intérieur confortable pour les parents et d'une chambre séparée pour les enfants. Pendant que les adultes peuvent enfin profiter d'une émission de fin de soirée sur le téléviseur grand écran, les enfants peuvent s'endormir en se remémorant les aventures de leur journée et en rêvant d'autres aventures."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 172
-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" => 310
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 310
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 310
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 310
"kids_price" => 0
]
]
"amount" => 1240
]
]
-totalRoomAmount: 1240.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#3118
-marginRate: 20
+extraId: 172
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1240.0
+totalStayAmountWoDiscount: 1240.0
+totalStayAmount: 1240.0
+finalAmountWoDiscount: 1488.0
+finalAmount: 1488.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#3119
-marginRate: 20
+extraId: 56
+name: "Suppléments repas Demi-pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 60
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 240
+kidsExtrasAmount: 0
+stayExtrasAmount: 240
+stayRoomAmount: 1240.0
+totalStayAmountWoDiscount: 1480.0
+totalStayAmount: 1480.0
+finalAmountWoDiscount: 1776.0
+finalAmount: 1776.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#3120
-marginRate: 20
+extraId: 58
+name: "Suppléments repas Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 1240.0
+totalStayAmountWoDiscount: 1880.0
+totalStayAmount: 1880.0
+finalAmountWoDiscount: 2256.0
+finalAmount: 2256.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
5 => App\DTO\RoomStayDTO {#3085
-marginRate: 20
-id: 223
-name: "Family Suite"
-slug: "family-suite"
-picture: "/uploads/rooms/223/673363b48f435422160255.jpg"
-description: "Notre suite familiale s'étend sur plus de 59 m², ce qui en fait une excellente option pour les familles qui souhaitent passer leurs vacances ensemble. La suite offre la commodité de deux espaces de couchage séparés, garantissant l'intimité de chacun tout en offrant un espace partagé pour passer de bons moments en famille."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 172
-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" => 350
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 350
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 350
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 350
"kids_price" => 0
]
]
"amount" => 1400
]
]
-totalRoomAmount: 1400.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:3 [
0 => App\DTO\ExtraStayDTO {#3121
-marginRate: 20
+extraId: 172
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1400.0
+totalStayAmountWoDiscount: 1400.0
+totalStayAmount: 1400.0
+finalAmountWoDiscount: 1680.0
+finalAmount: 1680.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#3122
-marginRate: 20
+extraId: 56
+name: "Suppléments repas Demi-pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 60
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 240
+kidsExtrasAmount: 0
+stayExtrasAmount: 240
+stayRoomAmount: 1400.0
+totalStayAmountWoDiscount: 1640.0
+totalStayAmount: 1640.0
+finalAmountWoDiscount: 1968.0
+finalAmount: 1968.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#3123
-marginRate: 20
+extraId: 58
+name: "Suppléments repas Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 1400.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: []
}
6 => App\DTO\RoomStayDTO {#3060
-marginRate: 20
-id: 224
-name: "Suite"
-slug: "suite-2"
-picture: "/uploads/rooms/224/673363f0d395c628259571.jpg"
-description: "Notre Suite, d'une superficie de 67 m², offre l'espace intérieur le plus spacieux pour vous détendre confortablement avec votre bien-aimé tout en profitant d'un film. Le canapé confortable peut être utilisé comme lit pour une famille avec un jeune enfant, ou il peut être une solution intelligente pour deux amis partageant la chambre, avec le salon séparé par un mur de la chambre principale. Vous trouverez la solution la plus intelligente pour votre plaisir dans chacune de ces suites."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 172
-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 {#3124
-marginRate: 20
+extraId: 172
+name: "BASE - PETIT DEJEUNER"
+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 {#3125
-marginRate: 20
+extraId: 56
+name: "Suppléments repas Demi-pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 60
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 240
+kidsExtrasAmount: 0
+stayExtrasAmount: 240
+stayRoomAmount: 1480.0
+totalStayAmountWoDiscount: 1720.0
+totalStayAmount: 1720.0
+finalAmountWoDiscount: 2064.0
+finalAmount: 2064.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#3126
-marginRate: 20
+extraId: 58
+name: "Suppléments repas Tout compris"
+description: null
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 1480.0
+totalStayAmountWoDiscount: 2120.0
+totalStayAmount: 2120.0
+finalAmountWoDiscount: 2544.0
+finalAmount: 2544.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 {#3281
-elements: array:4 [
0 => App\Entity\Offers {#3215
-id: 195
-title: "Super Early Bird Offer"
-type: "EarlyBooking"
-hotel: App\Entity\Hotels {#1142
-id: 15
-name: "Ocean's Creek"
-description: "Faisant partie du Shanti Hospitality Group, Ocean's Creek Beach Hotel est niché sur la côte nord-est de l'île Maurice, près de Balaclava. Grâce à son emplacement stratégique, l'hôtel est accessible dans toutes les régions de Maurice, découvrant la culture et la nature de l'île. L'hôtel offre une vue splendide sur la rivières Tombeau et la plage du Goulet, offrant un chaleureux coucher de soleil en fin de journée. Avec 365 jours de divertissement polyvalent, Ocean's Creek garantit une expérience client dynamique avec son équipe."
-website: "https://oceanscreekmauritius.com/"
-stars: 4
-youtubeVideoId: "7J_3Dc-wAGg"
-phone: "+230 651 5800"
-email: "info@oceanscreekmauritius.com"
-active: true
-gmapUrl: "<iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3746.6547924796564!2d57.516245312172714!3d-20.106712381243952!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x217c536cd78e90a3%3A0xd895ce7f104b003a!2sOcean's%20Creek!5e0!3m2!1sfr!2sfr!4v1718969283916!5m2!1sfr!2sfr" width="100%" height="600" style="border:0;" allowfullscreen="" loading="lazy" referrerpolicy="no-referrer-when-downgrade"></iframe>"
-zone: "Nord"
-createdAt: DateTimeImmutable @1714145854 {#1140
date: 2024-04-26 15:37:34.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672825 {#1141
date: 2024-10-23 08:40:25.0 UTC (+00:00)
}
-rooms: Doctrine\ORM\PersistentCollection {#1143
#collection: Doctrine\Common\Collections\ArrayCollection {#1144
-elements: array:7 [
0 => App\Entity\Rooms {#1613
-id: 86
-name: "Comfort"
-description: "La chambre Confort, d'une superficie de 34 m², est une option d'hébergement adaptée aux voyageurs seuls ou aux couples soucieux de leur budget. Nous avons créé cet espace en pensant à vous, à la recherche de l'équilibre parfait entre confort et style, nécessaire à vos vacances de rêve, votre lune de miel ou votre voyage d'affaires à l'île Maurice."
-active: true
-hotel: App\Entity\Hotels {#1142}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#2937
-elements: array:1 [
0 => App\Entity\RoomPrices {#1606
-id: 1532
-title: "Comfort"
-room: App\Entity\Rooms {#1613}
-quantity: null
-stayStartedAt: DateTimeImmutable @1735992000 {#1549
date: 2025-01-04 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746014400 {#1167
date: 2025-04-30 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1615
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1614
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "210.00"
-singleOccupancy: "210.00"
-tripleOccupancy: "80.00"
-active: true
-extraBaby: null
-extraChild: 50.0
-extraTeen: 80.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1612
#collection: Doctrine\Common\Collections\ArrayCollection {#1611
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1613}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1173 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1610
#collection: Doctrine\Common\Collections\ArrayCollection {#1609
-elements: array:8 [
0 => App\Entity\RoomCapacities {#1823
-id: 1786
-room: App\Entity\Rooms {#1613}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#1822
-id: 1787
-room: App\Entity\Rooms {#1613}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#1821
-id: 1788
-room: App\Entity\Rooms {#1613}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#1820
-id: 1789
-room: App\Entity\Rooms {#1613}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#1819
-id: 3466
-room: App\Entity\Rooms {#1613}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#1818
-id: 3467
-room: App\Entity\Rooms {#1613}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#1817
-id: 3468
-room: App\Entity\Rooms {#1613}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#1816
-id: 3469
-room: App\Entity\Rooms {#1613}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:8 [ …8]
-owner: App\Entity\Rooms {#1613}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1361 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1620
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1733392562 {#1534
date: 2024-12-05 09:56:02.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666bd83f01060777447590.jpg"
-gallery: App\Entity\Galleries {#1605
-id: 174
-hotel: null
-room: App\Entity\Rooms {#1613}
-images: Doctrine\ORM\PersistentCollection {#1604
#collection: Doctrine\Common\Collections\ArrayCollection {#1603
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1605}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1105 …}
}
-title: "Ocean's creek charme"
}
-mediaDirSlug: "86"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "ocean-s-creek-comfort"
}
1 => App\Entity\Rooms {#1596
-id: 87
-name: "Superior Room – Forest Facing"
-description: "Notre chambre Supérieure dispose d'une vaste surface intérieure de 43 mètres carrés, offrant un espace suffisant pour un séjour confortable pour un couple voyageant avec un enfant. Par rapport à notre confortable chambre Confort, la chambre Supérieure est plus large mais conserve tous les détails de style et les touches élégantes inchangés. Préparez-vous à vous détendre et à vous relaxer dans cette chambre lumineuse et accueillante."
-active: true
-hotel: App\Entity\Hotels {#1142}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#2932
-elements: array:1 [
0 => App\Entity\RoomPrices {#1552
-id: 1557
-title: "Superior Room – Forest Facing"
-room: App\Entity\Rooms {#1596}
-quantity: null
-stayStartedAt: DateTimeImmutable @1735992000 {#1600
date: 2025-01-04 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746014400 {#1599
date: 2025-04-30 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1598
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1597
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "250.00"
-singleOccupancy: "250.00"
-tripleOccupancy: "80.00"
-active: true
-extraBaby: null
-extraChild: 50.0
-extraTeen: 80.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1595
#collection: Doctrine\Common\Collections\ArrayCollection {#1594
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1596}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1173 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1593
#collection: Doctrine\Common\Collections\ArrayCollection {#1548
-elements: array:11 [
0 => App\Entity\RoomCapacities {#1815
-id: 1790
-room: App\Entity\Rooms {#1596}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#1770
-id: 1791
-room: App\Entity\Rooms {#1596}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#1773
-id: 1792
-room: App\Entity\Rooms {#1596}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#1772
-id: 1793
-room: App\Entity\Rooms {#1596}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#1774
-id: 1794
-room: App\Entity\Rooms {#1596}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#1769
-id: 1795
-room: App\Entity\Rooms {#1596}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#1776
-id: 1796
-room: App\Entity\Rooms {#1596}
-adults: 1
-teens: 1
-children: 1
-babies: 1
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#1779
-id: 1797
-room: App\Entity\Rooms {#1596}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#1778
-id: 1798
-room: App\Entity\Rooms {#1596}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#1775
-id: 1799
-room: App\Entity\Rooms {#1596}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#1782
-id: 1800
-room: App\Entity\Rooms {#1596}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:11 [ …11]
-owner: App\Entity\Rooms {#1596}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1361 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1602
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729761829 {#1601
date: 2024-10-24 09:23:49.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "671894397bbb6939197022.jpg"
-gallery: App\Entity\Galleries {#1547
-id: 199
-hotel: null
-room: App\Entity\Rooms {#1596}
-images: Doctrine\ORM\PersistentCollection {#1554
#collection: Doctrine\Common\Collections\ArrayCollection {#1557
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1547}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1105 …}
}
-title: "Oceans creek superion room"
}
-mediaDirSlug: "87"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "superior-room-forest-facing"
}
2 => App\Entity\Rooms {#1564
-id: 88
-name: "Superior Room – River / Pool Facing"
-description: "Notre chambre Supérieure dispose d'une vaste surface intérieure de 43 mètres carrés, offrant un espace suffisant pour un séjour confortable pour un couple voyageant avec un enfant. Par rapport à notre confortable chambre Confort, la chambre Supérieure est plus large mais conserve tous les détails de style et les touches élégantes inchangés. Préparez-vous à vous détendre et à vous relaxer dans cette chambre lumineuse et accueillante."
-active: true
-hotel: App\Entity\Hotels {#1142}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#2955
-elements: array:1 [
0 => App\Entity\RoomPrices {#1573
-id: 1568
-title: "Superior Room – River / Pool Facing"
-room: App\Entity\Rooms {#1564}
-quantity: null
-stayStartedAt: DateTimeImmutable @1735992000 {#1553
date: 2025-01-04 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746014400 {#1560
date: 2025-04-30 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1563
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1562
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "280.00"
-singleOccupancy: "280.00"
-tripleOccupancy: "80.00"
-active: true
-extraBaby: null
-extraChild: 50.0
-extraTeen: 80.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1559
#collection: Doctrine\Common\Collections\ArrayCollection {#1566
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1564}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1173 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1569
#collection: Doctrine\Common\Collections\ArrayCollection {#1568
-elements: array:12 [
0 => App\Entity\RoomCapacities {#1785
-id: 1801
-room: App\Entity\Rooms {#1564}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#1784
-id: 1802
-room: App\Entity\Rooms {#1564}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#1803
-id: 1803
-room: App\Entity\Rooms {#1564}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#1794
-id: 1804
-room: App\Entity\Rooms {#1564}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#1797
-id: 1805
-room: App\Entity\Rooms {#1564}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#1760
-id: 1806
-room: App\Entity\Rooms {#1564}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#1763
-id: 1807
-room: App\Entity\Rooms {#1564}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#1586
-id: 1808
-room: App\Entity\Rooms {#1564}
-adults: 1
-teens: 1
-children: 1
-babies: 1
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#1665
-id: 1809
-room: App\Entity\Rooms {#1564}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#1766
-id: 1810
-room: App\Entity\Rooms {#1564}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#1841
-id: 1811
-room: App\Entity\Rooms {#1564}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#1828
-id: 1812
-room: App\Entity\Rooms {#1564}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:12 [ …12]
-owner: App\Entity\Rooms {#1564}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1361 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1556
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1731435458 {#1558
date: 2024-11-12 18:17:38.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "673363829a73e854145537.jpg"
-gallery: App\Entity\Galleries {#1576
-id: 200
-hotel: null
-room: App\Entity\Rooms {#1564}
-images: Doctrine\ORM\PersistentCollection {#1575
#collection: Doctrine\Common\Collections\ArrayCollection {#1577
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1576}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1105 …}
}
-title: "oceans creek superior room river pool facing"
}
-mediaDirSlug: "88"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "superior-room-river-pool-facing"
}
3 => App\Entity\Rooms {#1571
-id: 89
-name: "Family Room – Forest Facing"
-description: "8 Suites Famille, d'une superficie de 59m², comprenant une chambre principale avec un lit King Size (avec salle de bains attenante), une petite chambre séparée pour les enfants (avec une salle d'eau) et un balcon avec vue sur la piscine, la rivière ou la mer."
-active: true
-hotel: App\Entity\Hotels {#1142}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#2976
-elements: array:1 [
0 => App\Entity\RoomPrices {#1532
-id: 1573
-title: "Family Room – Forest Facing"
-room: App\Entity\Rooms {#1571}
-quantity: null
-stayStartedAt: DateTimeImmutable @1735992000 {#1582
date: 2025-01-04 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746014400 {#1581
date: 2025-04-30 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1583
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1584
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "280.00"
-singleOccupancy: "280.00"
-tripleOccupancy: "80.00"
-active: true
-extraBaby: null
-extraChild: 50.0
-extraTeen: 80.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1585
#collection: Doctrine\Common\Collections\ArrayCollection {#1546
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1571}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1173 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1587
#collection: Doctrine\Common\Collections\ArrayCollection {#1590
-elements: array:15 [
0 => App\Entity\RoomCapacities {#1837
-id: 1813
-room: App\Entity\Rooms {#1571}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#1836
-id: 1814
-room: App\Entity\Rooms {#1571}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#1835
-id: 1815
-room: App\Entity\Rooms {#1571}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#1834
-id: 1816
-room: App\Entity\Rooms {#1571}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#1833
-id: 1817
-room: App\Entity\Rooms {#1571}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#1832
-id: 1818
-room: App\Entity\Rooms {#1571}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#1831
-id: 1819
-room: App\Entity\Rooms {#1571}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#1838
-id: 1820
-room: App\Entity\Rooms {#1571}
-adults: 1
-teens: 1
-children: 1
-babies: 1
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#1839
-id: 1821
-room: App\Entity\Rooms {#1571}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#1856
-id: 1822
-room: App\Entity\Rooms {#1571}
-adults: 1
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#1854
-id: 1823
-room: App\Entity\Rooms {#1571}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#1855
-id: 1824
-room: App\Entity\Rooms {#1571}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#1852
-id: 1825
-room: App\Entity\Rooms {#1571}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#1853
-id: 1826
-room: App\Entity\Rooms {#1571}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
14 => App\Entity\RoomCapacities {#1850
-id: 1827
-room: App\Entity\Rooms {#1571}
-adults: 3
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:15 [ …15]
-owner: App\Entity\Rooms {#1571}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1361 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1572
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1733392742 {#1579
date: 2024-12-05 09:59:02.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "666843d008ecc978632726.jpg"
-gallery: App\Entity\Galleries {#1533
-id: 201
-hotel: null
-room: App\Entity\Rooms {#1571}
-images: Doctrine\ORM\PersistentCollection {#1535
#collection: Doctrine\Common\Collections\ArrayCollection {#1536
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1533}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1105 …}
}
-title: "oceans creek family room"
}
-mediaDirSlug: "89"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "family-room-forest-facing"
}
4 => App\Entity\Rooms {#1544
-id: 90
-name: "Family Room - River / Pool Facing"
-description: "La chambre familiale, conçue par des familles pour des familles, s'étend sur plus de 43 m². Ces chambres douillettes disposent d'un espace intérieur confortable pour les parents et d'une chambre séparée pour les enfants. Pendant que les adultes peuvent enfin profiter d'une émission de fin de soirée sur le téléviseur grand écran, les enfants peuvent s'endormir en se remémorant les aventures de leur journée et en rêvant d'autres aventures."
-active: true
-hotel: App\Entity\Hotels {#1142}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#2997
-elements: array:1 [
0 => App\Entity\RoomPrices {#1580
-id: 1578
-title: "Family Room - River / Pool Facing"
-room: App\Entity\Rooms {#1544}
-quantity: null
-stayStartedAt: DateTimeImmutable @1735992000 {#1539
date: 2025-01-04 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746014400 {#1541
date: 2025-04-30 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1542
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1543
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "310.00"
-singleOccupancy: "310.00"
-tripleOccupancy: "80.00"
-active: true
-extraBaby: null
-extraChild: 50.0
-extraTeen: 80.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1545
#collection: Doctrine\Common\Collections\ArrayCollection {#1524
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1544}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1173 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1555
#collection: Doctrine\Common\Collections\ArrayCollection {#1561
-elements: array:13 [
0 => App\Entity\RoomCapacities {#1851
-id: 1828
-room: App\Entity\Rooms {#1544}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#1848
-id: 1829
-room: App\Entity\Rooms {#1544}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#1849
-id: 1830
-room: App\Entity\Rooms {#1544}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#1846
-id: 1831
-room: App\Entity\Rooms {#1544}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#1847
-id: 1832
-room: App\Entity\Rooms {#1544}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#1844
-id: 1833
-room: App\Entity\Rooms {#1544}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#1845
-id: 1834
-room: App\Entity\Rooms {#1544}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#1842
-id: 1835
-room: App\Entity\Rooms {#1544}
-adults: 1
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#1843
-id: 1836
-room: App\Entity\Rooms {#1544}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#1840
-id: 1837
-room: App\Entity\Rooms {#1544}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#1859
-id: 1838
-room: App\Entity\Rooms {#1544}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#1860
-id: 1839
-room: App\Entity\Rooms {#1544}
-adults: 3
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#1861
-id: 3470
-room: App\Entity\Rooms {#1544}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:13 [ …13]
-owner: App\Entity\Rooms {#1544}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1361 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1537
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1731435484 {#1538
date: 2024-11-12 18:18:04.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "6733639c007f3920780834.jpg"
-gallery: App\Entity\Galleries {#1588
-id: 202
-hotel: null
-room: App\Entity\Rooms {#1544}
-images: Doctrine\ORM\PersistentCollection {#1307
#collection: Doctrine\Common\Collections\ArrayCollection {#1522
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1588}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1105 …}
}
-title: "oceans creek amil room pool facing"
}
-mediaDirSlug: "90"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "family-room-river-pool-facing"
}
5 => App\Entity\Rooms {#1674
-id: 223
-name: "Family Suite"
-description: "Notre suite familiale s'étend sur plus de 59 m², ce qui en fait une excellente option pour les familles qui souhaitent passer leurs vacances ensemble. La suite offre la commodité de deux espaces de couchage séparés, garantissant l'intimité de chacun tout en offrant un espace partagé pour passer de bons moments en famille."
-active: true
-hotel: App\Entity\Hotels {#1142}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#3018
-elements: array:1 [
0 => App\Entity\RoomPrices {#1639
-id: 1550
-title: "Family Suite"
-room: App\Entity\Rooms {#1674}
-quantity: null
-stayStartedAt: DateTimeImmutable @1735992000 {#1174
date: 2025-01-04 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746014400 {#1529
date: 2025-04-30 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1682
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1680
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "350.00"
-singleOccupancy: "350.00"
-tripleOccupancy: "80.00"
-active: true
-extraBaby: null
-extraChild: 50.0
-extraTeen: 80.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1668
#collection: Doctrine\Common\Collections\ArrayCollection {#1661
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1674}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1173 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1655
#collection: Doctrine\Common\Collections\ArrayCollection {#1649
-elements: array:18 [
0 => App\Entity\RoomCapacities {#1862
-id: 1840
-room: App\Entity\Rooms {#1674}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#1863
-id: 1841
-room: App\Entity\Rooms {#1674}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#1864
-id: 1842
-room: App\Entity\Rooms {#1674}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#1865
-id: 1843
-room: App\Entity\Rooms {#1674}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#1866
-id: 1844
-room: App\Entity\Rooms {#1674}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#1867
-id: 1845
-room: App\Entity\Rooms {#1674}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#1868
-id: 1846
-room: App\Entity\Rooms {#1674}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#1869
-id: 1847
-room: App\Entity\Rooms {#1674}
-adults: 1
-teens: 1
-children: 1
-babies: 1
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#1870
-id: 1848
-room: App\Entity\Rooms {#1674}
-adults: 1
-teens: 1
-children: 2
-babies: 1
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#1871
-id: 1849
-room: App\Entity\Rooms {#1674}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#1872
-id: 1850
-room: App\Entity\Rooms {#1674}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#1873
-id: 1851
-room: App\Entity\Rooms {#1674}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#1874
-id: 1852
-room: App\Entity\Rooms {#1674}
-adults: 2
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#1875
-id: 1853
-room: App\Entity\Rooms {#1674}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
14 => App\Entity\RoomCapacities {#1876
-id: 1854
-room: App\Entity\Rooms {#1674}
-adults: 2
-teens: null
-children: 2
-babies: 1
-isDefaultConfig: false
}
15 => App\Entity\RoomCapacities {#1877
-id: 1855
-room: App\Entity\Rooms {#1674}
-adults: 3
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
16 => App\Entity\RoomCapacities {#1878
-id: 1856
-room: App\Entity\Rooms {#1674}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
17 => App\Entity\RoomCapacities {#1879
-id: 1857
-room: App\Entity\Rooms {#1674}
-adults: 2
-teens: 2
-children: null
-babies: null
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:18 [ …18]
-owner: App\Entity\Rooms {#1674}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1361 …}
}
-createdAt: DateTimeImmutable @1721748743 {#1395
date: 2024-07-23 15:32:23.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1731435508 {#1523
date: 2024-11-12 18:18:28.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "673363b48f435422160255.jpg"
-gallery: App\Entity\Galleries {#1638
-id: 203
-hotel: null
-room: App\Entity\Rooms {#1674}
-images: Doctrine\ORM\PersistentCollection {#1637
#collection: Doctrine\Common\Collections\ArrayCollection {#1636
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1638}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1105 …}
}
-title: "oceans creek family suite"
}
-mediaDirSlug: "223"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "family-suite"
}
6 => App\Entity\Rooms {#1629
-id: 224
-name: "Suite"
-description: "Notre Suite, d'une superficie de 67 m², offre l'espace intérieur le plus spacieux pour vous détendre confortablement avec votre bien-aimé tout en profitant d'un film. Le canapé confortable peut être utilisé comme lit pour une famille avec un jeune enfant, ou il peut être une solution intelligente pour deux amis partageant la chambre, avec le salon séparé par un mur de la chambre principale. Vous trouverez la solution la plus intelligente pour votre plaisir dans chacune de ces suites."
-active: true
-hotel: App\Entity\Hotels {#1142}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#3039
-elements: array:1 [
0 => App\Entity\RoomPrices {#1683
-id: 1543
-title: "Suite (copie)"
-room: App\Entity\Rooms {#1629}
-quantity: null
-stayStartedAt: DateTimeImmutable @1735992000 {#1633
date: 2025-01-04 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746014400 {#1632
date: 2025-04-30 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1631
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1630
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "370.00"
-singleOccupancy: "370.00"
-tripleOccupancy: "80.00"
-active: true
-extraBaby: null
-extraChild: 50.0
-extraTeen: 80.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1628
#collection: Doctrine\Common\Collections\ArrayCollection {#1627
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1629}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1173 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1626
#collection: Doctrine\Common\Collections\ArrayCollection {#1625
-elements: array:12 [
0 => App\Entity\RoomCapacities {#1880
-id: 1858
-room: App\Entity\Rooms {#1629}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#1881
-id: 1859
-room: App\Entity\Rooms {#1629}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#1882
-id: 1860
-room: App\Entity\Rooms {#1629}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#1883
-id: 1861
-room: App\Entity\Rooms {#1629}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#1884
-id: 1862
-room: App\Entity\Rooms {#1629}
-adults: 1
-teens: 1
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#1885
-id: 1863
-room: App\Entity\Rooms {#1629}
-adults: 1
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#1886
-id: 1864
-room: App\Entity\Rooms {#1629}
-adults: 1
-teens: 1
-children: null
-babies: 1
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#1887
-id: 1865
-room: App\Entity\Rooms {#1629}
-adults: 1
-teens: 1
-children: 1
-babies: 1
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#1888
-id: 1866
-room: App\Entity\Rooms {#1629}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#1889
-id: 1867
-room: App\Entity\Rooms {#1629}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#1890
-id: 1868
-room: App\Entity\Rooms {#1629}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#1891
-id: 1869
-room: App\Entity\Rooms {#1629}
-adults: 2
-teens: null
-children: 1
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:12 [ …12]
-owner: App\Entity\Rooms {#1629}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1361 …}
}
-createdAt: DateTimeImmutable @1721748765 {#1635
date: 2024-07-23 15:32:45.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1731435568 {#1634
date: 2024-11-12 18:19:28.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "673363f0d395c628259571.jpg"
-gallery: App\Entity\Galleries {#1681
-id: 204
-hotel: null
-room: App\Entity\Rooms {#1629}
-images: Doctrine\ORM\PersistentCollection {#1640
#collection: Doctrine\Common\Collections\ArrayCollection {#1679
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1681}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1105 …}
}
-title: "oceans creek suite"
}
-mediaDirSlug: "224"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "suite-2"
}
]
}
#initialized: true
-snapshot: array:7 [ …7]
-owner: App\Entity\Hotels {#1142}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#880 …}
-backRefFieldName: "hotel"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-address: "Route Le Goulet, Balaclava, Île Maurice"
-checkInTime: null
-checkOutTime: null
-babyAgeMax: "3"
-childAgeMax: "12"
-teenAgeMax: "18"
-extraCharges: Doctrine\ORM\PersistentCollection {#1145
#collection: Doctrine\Common\Collections\ArrayCollection {#1146
-elements: array:7 [
0 => App\Entity\ExtraCharges {#3089
-id: 56
-title: "Suppléments repas Demi-pension"
-description: null
-adultExtra: 30.0
-babyExtra: null
-childExtra: 15.0
-teenExtra: 30.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1142}
}
1 => App\Entity\ExtraCharges {#3086
-id: 58
-title: "Suppléments repas Tout compris"
-description: null
-adultExtra: 80.0
-babyExtra: null
-childExtra: 40.0
-teenExtra: 60.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1142}
}
2 => App\Entity\ExtraCharges {#3096
-id: 59
-title: "Suppléments repas Noêl"
-description: null
-adultExtra: 120.0
-babyExtra: null
-childExtra: 60.0
-teenExtra: 120.0
-stayStartedAt: DateTimeImmutable @1734998400 {#3088
date: 2024-12-24 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1735084800 {#3094
date: 2024-12-25 00:00:00.0 UTC (+00:00)
}
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1142}
}
3 => App\Entity\ExtraCharges {#3099
-id: 62
-title: "Suppléments repas Noêl demi-pension/Tout compris"
-description: null
-adultExtra: 60.0
-babyExtra: null
-childExtra: 30.0
-teenExtra: 60.0
-stayStartedAt: DateTimeImmutable @1734998400 {#3097
date: 2024-12-24 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1735084800 {#3098
date: 2024-12-25 00:00:00.0 UTC (+00:00)
}
-isActive: false
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1142}
}
4 => App\Entity\ExtraCharges {#3102
-id: 63
-title: "Suppléments repas Nouvel An Bed&Breakfast"
-description: null
-adultExtra: 120.0
-babyExtra: null
-childExtra: 60.0
-teenExtra: 120.0
-stayStartedAt: DateTimeImmutable @1735603200 {#3100
date: 2024-12-31 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1735689600 {#3101
date: 2025-01-01 00:00:00.0 UTC (+00:00)
}
-isActive: false
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1142}
}
5 => App\Entity\ExtraCharges {#3105
-id: 65
-title: "Suppléments repas Nouvel An"
-description: null
-adultExtra: 90.0
-babyExtra: null
-childExtra: 45.0
-teenExtra: 90.0
-stayStartedAt: DateTimeImmutable @1735603200 {#3103
date: 2024-12-31 00:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1735689600 {#3104
date: 2025-01-01 00:00:00.0 UTC (+00:00)
}
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1142}
}
6 => App\Entity\ExtraCharges {#3106
-id: 172
-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 {#1142}
}
]
}
#initialized: true
-snapshot: array:7 [ …7]
-owner: App\Entity\Hotels {#1142}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#876 …}
-backRefFieldName: "hotel"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#952 …}
}
-imageFile: null
-featuredImage: "66603d5c48ff0011028287.webp"
-gallery: App\Entity\Galleries {#1149
-id: 182
-hotel: App\Entity\Hotels {#1142}
-room: null
-images: Doctrine\ORM\PersistentCollection {#1150
#collection: Doctrine\Common\Collections\ArrayCollection {#1151
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1149}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1105 …}
}
-title: "Ocean's creek"
}
-mediaDirSlug: null
-offers: Doctrine\Common\Collections\ArrayCollection {#3281}
-highlighted: null
-services: null
-hlStartAt: null
-hlEndAt: null
-slug: "ocean-s-creek"
}
-description: null
-stayStartAt: DateTimeImmutable @1730419200 {#3211
date: 2024-11-01 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1761868800 {#3212
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1730419200 {#3213
date: 2024-11-01 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1761868800 {#3214
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-reference: "Super Early Bird Offer"
-minNights: null
-maxNights: null
-earlyBookingDays: 60
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#3216
#collection: Doctrine\Common\Collections\ArrayCollection {#3217
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#3215}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1077 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 30
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#3218
#collection: Doctrine\Common\Collections\ArrayCollection {#3219
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#3215}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1083 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#958 …}
}
-offers: Doctrine\ORM\PersistentCollection {#3220
#collection: Doctrine\Common\Collections\ArrayCollection {#3221
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#3215}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1087 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#958 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#3222
#collection: Doctrine\Common\Collections\ArrayCollection {#3223
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#3215}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1089 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#952 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#3224
#collection: Doctrine\Common\Collections\ArrayCollection {#3225
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#3215}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1095 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#952 …}
}
-extrasDiscount: null
-priority: 2
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
1 => App\Entity\Offers {#3230
-id: 196
-title: "Early Bird Offer"
-type: "EarlyBooking"
-hotel: App\Entity\Hotels {#1142}
-description: null
-stayStartAt: DateTimeImmutable @1730419200 {#3226
date: 2024-11-01 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1761868800 {#3227
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1730419200 {#3228
date: 2024-11-01 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1761868800 {#3229
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-reference: "Early Bird Offer"
-minNights: null
-maxNights: null
-earlyBookingDays: 30
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#3231
#collection: Doctrine\Common\Collections\ArrayCollection {#3232
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#3230}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1077 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 25
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#3233
#collection: Doctrine\Common\Collections\ArrayCollection {#3234
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#3230}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1083 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#958 …}
}
-offers: Doctrine\ORM\PersistentCollection {#3235
#collection: Doctrine\Common\Collections\ArrayCollection {#3236
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#3230}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1087 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#958 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#3237
#collection: Doctrine\Common\Collections\ArrayCollection {#3238
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#3230}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1089 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#952 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#3239
#collection: Doctrine\Common\Collections\ArrayCollection {#3240
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#3230}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1095 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#952 …}
}
-extrasDiscount: null
-priority: 2
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
2 => App\Entity\Offers {#3245
-id: 198
-title: "Last Minute Offer"
-type: "EarlyBooking"
-hotel: App\Entity\Hotels {#1142}
-description: null
-stayStartAt: DateTimeImmutable @1735948800 {#3241
date: 2025-01-04 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1761868800 {#3242
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1730419200 {#3243
date: 2024-11-01 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1761868800 {#3244
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
-reference: "Last Minute Offer"
-minNights: null
-maxNights: null
-earlyBookingDays: 1
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#3246
#collection: Doctrine\Common\Collections\ArrayCollection {#3247
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#3245}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1077 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 20
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#3248
#collection: Doctrine\Common\Collections\ArrayCollection {#3249
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#3245}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1083 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#958 …}
}
-offers: Doctrine\ORM\PersistentCollection {#3250
#collection: Doctrine\Common\Collections\ArrayCollection {#3251
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#3245}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1087 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#958 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#3252
#collection: Doctrine\Common\Collections\ArrayCollection {#3253
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#3245}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1089 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#952 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#3254
#collection: Doctrine\Common\Collections\ArrayCollection {#3255
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#3245}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1095 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#952 …}
}
-extrasDiscount: null
-priority: 2
-discountKids1: null
-discountKids2: null
-discountKids3: null
}
3 => App\Entity\Offers {#3260
-id: 256
-title: "PEAK OFFER"
-type: "Special"
-hotel: App\Entity\Hotels {#1142}
-description: null
-stayStartAt: DateTimeImmutable @1736121600 {#3256
date: 2025-01-06 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1766275200 {#3257
date: 2025-12-21 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1734480000 {#3258
date: 2024-12-18 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1740700800 {#3259
date: 2025-02-28 00:00:00.0 UTC (+00:00)
}
-reference: "OC_Peak24"
-minNights: 1
-maxNights: null
-earlyBookingDays: null
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#3261
#collection: Doctrine\Common\Collections\ArrayCollection {#3262
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#3260}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1077 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 35
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#3263
#collection: Doctrine\Common\Collections\ArrayCollection {#3264
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#3260}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1083 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#958 …}
}
-offers: Doctrine\ORM\PersistentCollection {#3265
#collection: Doctrine\Common\Collections\ArrayCollection {#3266
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#3260}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1087 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#958 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#3267
#collection: Doctrine\Common\Collections\ArrayCollection {#3268
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#3260}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1089 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#952 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#3269
#collection: Doctrine\Common\Collections\ArrayCollection {#3270
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#3260}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1095 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#952 …}
}
-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;
}
"195 - Super Early Bird Offer(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;
}
"196 - Early Bird Offer(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 {#3432
-debug: true
+id: 256
+title: "PEAK OFFER"
+description: null
+type: "Special"
+reference: "OC_Peak24"
+from: DateTimeImmutable @1736121600 {#3256
date: 2025-01-06 00:00:00.0 UTC (+00:00)
}
+to: DateTimeImmutable @1766275200 {#3257
date: 2025-12-21 00:00:00.0 UTC (+00:00)
}
+earlyBookingDays: null
+minNights: 1
+maxNights: null
+discountRate: 35
+discountFamilyRates: []
+combinableRate: null
+priority: 1
+extrasDiscountRate: null
+isAllRooms: true
+isCombinable: false
+selectedRoomsIDs: []
+selectedExtrasIDs: []
+selectedOffersIDs: []
+selectedExtrasDiscountIDs: []
}
1 => App\DTO\PromotionDTO {#3429
-debug: true
+id: 198
+title: "Last Minute Offer"
+description: null
+type: "EarlyBooking"
+reference: "Last Minute Offer"
+from: DateTimeImmutable @1735948800 {#3241
date: 2025-01-04 00:00:00.0 UTC (+00:00)
}
+to: DateTimeImmutable @1761868800 {#3242
date: 2025-10-31 00:00:00.0 UTC (+00:00)
}
+earlyBookingDays: 1
+minNights: null
+maxNights: null
+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 : Tamassa Resort - Chambre : #141 - Chambre "Tamassa" 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 {#3739
+rpId: 1849
+adultsPrice: 190
+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" => 190
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 190
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 190
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 190
"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 : Tamassa Resort - Chambre : #142 - 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 {#3760
+rpId: 1860
+adultsPrice: 220
+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" => 220
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 220
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 220
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 220
"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 : Tamassa Resort - Chambre : #143 - Chambre Supérieure 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 {#3781
+rpId: 1870
+adultsPrice: 250
+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" => 250
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 250
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 250
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 250
"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 : Tamassa Resort - Chambre : #144 - Chambre "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 {#3802
+rpId: 1880
+adultsPrice: 290
+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" => 290
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 290
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 290
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 290
"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" => 141
"room_picture" => "/uploads/rooms/141/67162cf0c5fab854751288.jpg"
"room_name" => "Chambre "Tamassa""
"room_slug" => "chambre-tamassa"
"room_description" => "Avec 43m2 d’espace astucieusement conçus, c’est la chambre idéale. Nos 90 chambres Standard ont tout ce qu’il faut pour que vous vous sentiez comme à la maison. Wi-Fi gratuit 24h/24, minibar, smart TV et balcon ou patio spacieux. Vous pouvez même choisir entre la douche à l’italienne ou le plaisir d’un bain moussant ! Béneficiez de 20% de remise sur notre carte alimentaire au PLAYA pour toutes reservation en demi pension, pension complete & tout inclus."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1849
"adult_amount" => 760
"children_amount" => 0
"basis_amount" => 760
"mandatoryExtraId" => null
"default_extra_label" => "Petit-déjeuner"
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 190
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 190
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 190
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 190
"kids_price" => 0
]
]
]
]
1 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 142
"room_picture" => "/uploads/rooms/142/67162dc1c7d7a401353094.jpg"
"room_name" => "Chambre Supérieure"
"room_slug" => "chambre-superieure-2"
"room_description" => "Pour votre plus grand confort, nos 64 chambres Supérieure (à partir de 43 m2) sont dotées de petits plus tels qu’une enceinte iPod ou une cafetière à piston. Les espaces modernes offrent une sensation d’ouverture avec des coins salon intérieurs/extérieurs !"
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1860
"adult_amount" => 880
"children_amount" => 0
"basis_amount" => 880
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 220
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 220
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 220
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 220
"kids_price" => 0
]
]
]
]
2 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 143
"room_picture" => "/uploads/rooms/143/67162d5987a98559889227.jpg"
"room_name" => "Chambre Supérieure Océan"
"room_slug" => "chambre-superieure-ocean"
"room_description" => "Pour ceux qui recherchent les vacances inoubliables, ne cherchez pas plus loin que nos 18 chambres Supérieures Océan. Avec une chambre de 43 m2 offrant une vue sur l’océan et toutes les commodités nécessaires, vous pourrez vous plonger dans la beauté époustouflante de votre environnement tout en profitant de l’expérience de vacances ultime."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1870
"adult_amount" => 1000
"children_amount" => 0
"basis_amount" => 1000
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 250
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 250
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 250
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 250
"kids_price" => 0
]
]
]
]
3 => array:13 [
"current_chamber" => App\DTO\SearchChambersDTO {#820}
"room_id" => 144
"room_picture" => "/uploads/rooms/144/67162e4812fbf981724190.jpg"
"room_name" => "Chambre "Plage""
"room_slug" => "chambre-plage"
"room_description" => "Pour profiter au maximum de l’air salin et des magnifiques couchers de soleil, optez pour l’une de nos 34 chambres Plage (à partir de 43 m2). En plus de la vue sur l’océan, elles offrent tout le confort dont vous rêvez pour passer de bonnes vacances."
"adults" => 2
"kids" => 0
"teens" => null
"children" => null
"babies" => null
"isCapacity" => true
"prices" => array:7 [
"room_price_id" => 1880
"adult_amount" => 1160
"children_amount" => 0
"basis_amount" => 1160
"mandatoryExtraId" => null
"default_extra_label" => ""
"dates_prices" => array:4 [
"2025-03-22" => array:2 [
"adults_price" => 290
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 290
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 290
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 290
"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 {#3107
-marginRate: 20
-id: 141
-name: "Chambre "Tamassa""
-slug: "chambre-tamassa"
-picture: "/uploads/rooms/141/67162cf0c5fab854751288.jpg"
-description: "Avec 43m2 d’espace astucieusement conçus, c’est la chambre idéale. Nos 90 chambres Standard ont tout ce qu’il faut pour que vous vous sentiez comme à la maison. Wi-Fi gratuit 24h/24, minibar, smart TV et balcon ou patio spacieux. Vous pouvez même choisir entre la douche à l’italienne ou le plaisir d’un bain moussant ! Béneficiez de 20% de remise sur notre carte alimentaire au PLAYA pour toutes reservation en demi pension, pension complete & tout inclus."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: "Petit-déjeuner"
-mandatoryExtraId: 168
-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" => 190
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 190
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 190
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 190
"kids_price" => 0
]
]
"amount" => 760
]
]
-totalRoomAmount: 760.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:9 [
0 => App\DTO\ExtraStayDTO {#3820
-marginRate: 20
+extraId: 168
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 760.0
+totalStayAmountWoDiscount: 760.0
+totalStayAmount: 760.0
+finalAmountWoDiscount: 912.0
+finalAmount: 912.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#3823
-marginRate: 20
+extraId: 127
+name: "Suppléments repas Demi-pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 50
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 200
+kidsExtrasAmount: 0
+stayExtrasAmount: 200
+stayRoomAmount: 760.0
+totalStayAmountWoDiscount: 960.0
+totalStayAmount: 960.0
+finalAmountWoDiscount: 1152.0
+finalAmount: 1152.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#3836
-marginRate: 20
+extraId: 128
+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: 760.0
+totalStayAmountWoDiscount: 1080.0
+totalStayAmount: 1080.0
+finalAmountWoDiscount: 1296.0
+finalAmount: 1296.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#3837
-marginRate: 20
+extraId: 130
+name: "Suppléments repas Formule "Tout inclus""
+description: null
+stayTotalNights: 4
+dailyAdults: 120
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 480
+kidsExtrasAmount: 0
+stayExtrasAmount: 480
+stayRoomAmount: 760.0
+totalStayAmountWoDiscount: 1240.0
+totalStayAmount: 1240.0
+finalAmountWoDiscount: 1488.0
+finalAmount: 1488.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
4 => App\DTO\ExtraStayDTO {#3838
-marginRate: 20
+extraId: 126
+name: "Suppléments Lit additionnel Très basse Saison"
+description: "1er enfant FREE / 2ème enfant tarif"
+stayTotalNights: 4
+dailyAdults: 140
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 560
+kidsExtrasAmount: 0
+stayExtrasAmount: 560
+stayRoomAmount: 760.0
+totalStayAmountWoDiscount: 1320.0
+totalStayAmount: 1320.0
+finalAmountWoDiscount: 1584.0
+finalAmount: 1584.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
5 => App\DTO\ExtraStayDTO {#3839
-marginRate: 20
+extraId: 124
+name: "Suppléments Lit additionnel Basse Saison"
+description: "1er enfant FREE / 2ème enfant tarif"
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 760.0
+totalStayAmountWoDiscount: 1400.0
+totalStayAmount: 1400.0
+finalAmountWoDiscount: 1680.0
+finalAmount: 1680.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
6 => App\DTO\ExtraStayDTO {#3840
-marginRate: 20
+extraId: 120
+name: "Suppléments Lit additionnel Intermédiaire"
+description: "1er enfant FREE / 2ème enfant tarif"
+stayTotalNights: 4
+dailyAdults: 220
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 880
+kidsExtrasAmount: 0
+stayExtrasAmount: 880
+stayRoomAmount: 760.0
+totalStayAmountWoDiscount: 1640.0
+totalStayAmount: 1640.0
+finalAmountWoDiscount: 1968.0
+finalAmount: 1968.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
7 => App\DTO\ExtraStayDTO {#3841
-marginRate: 20
+extraId: 118
+name: "Suppléments Lit additionnel Haute Saison Adulte"
+description: "1er enfant FREE / 2ème enfant tarif"
+stayTotalNights: 4
+dailyAdults: 260
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1040
+kidsExtrasAmount: 0
+stayExtrasAmount: 1040
+stayRoomAmount: 760.0
+totalStayAmountWoDiscount: 1800.0
+totalStayAmount: 1800.0
+finalAmountWoDiscount: 2160.0
+finalAmount: 2160.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
8 => App\DTO\ExtraStayDTO {#3842
-marginRate: 20
+extraId: 122
+name: "Suppléments Lit additionnel Pointe"
+description: "1er enfant FREE / 2ème enfant tarif"
+stayTotalNights: 4
+dailyAdults: 440
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1760
+kidsExtrasAmount: 0
+stayExtrasAmount: 1760
+stayRoomAmount: 760.0
+totalStayAmountWoDiscount: 2520.0
+totalStayAmount: 2520.0
+finalAmountWoDiscount: 3024.0
+finalAmount: 3024.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
1 => App\DTO\RoomStayDTO {#3777
-marginRate: 20
-id: 142
-name: "Chambre Supérieure"
-slug: "chambre-superieure-2"
-picture: "/uploads/rooms/142/67162dc1c7d7a401353094.jpg"
-description: "Pour votre plus grand confort, nos 64 chambres Supérieure (à partir de 43 m2) sont dotées de petits plus tels qu’une enceinte iPod ou une cafetière à piston. Les espaces modernes offrent une sensation d’ouverture avec des coins salon intérieurs/extérieurs !"
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 168
-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" => 220
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 220
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 220
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 220
"kids_price" => 0
]
]
"amount" => 880
]
]
-totalRoomAmount: 880.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:9 [
0 => App\DTO\ExtraStayDTO {#3843
-marginRate: 20
+extraId: 168
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 880.0
+totalStayAmountWoDiscount: 880.0
+totalStayAmount: 880.0
+finalAmountWoDiscount: 1056.0
+finalAmount: 1056.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#3844
-marginRate: 20
+extraId: 127
+name: "Suppléments repas Demi-pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 50
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 200
+kidsExtrasAmount: 0
+stayExtrasAmount: 200
+stayRoomAmount: 880.0
+totalStayAmountWoDiscount: 1080.0
+totalStayAmount: 1080.0
+finalAmountWoDiscount: 1296.0
+finalAmount: 1296.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#3845
-marginRate: 20
+extraId: 128
+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: 880.0
+totalStayAmountWoDiscount: 1200.0
+totalStayAmount: 1200.0
+finalAmountWoDiscount: 1440.0
+finalAmount: 1440.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#3846
-marginRate: 20
+extraId: 130
+name: "Suppléments repas Formule "Tout inclus""
+description: null
+stayTotalNights: 4
+dailyAdults: 120
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 480
+kidsExtrasAmount: 0
+stayExtrasAmount: 480
+stayRoomAmount: 880.0
+totalStayAmountWoDiscount: 1360.0
+totalStayAmount: 1360.0
+finalAmountWoDiscount: 1632.0
+finalAmount: 1632.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
4 => App\DTO\ExtraStayDTO {#3847
-marginRate: 20
+extraId: 126
+name: "Suppléments Lit additionnel Très basse Saison"
+description: "1er enfant FREE / 2ème enfant tarif"
+stayTotalNights: 4
+dailyAdults: 140
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 560
+kidsExtrasAmount: 0
+stayExtrasAmount: 560
+stayRoomAmount: 880.0
+totalStayAmountWoDiscount: 1440.0
+totalStayAmount: 1440.0
+finalAmountWoDiscount: 1728.0
+finalAmount: 1728.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
5 => App\DTO\ExtraStayDTO {#3848
-marginRate: 20
+extraId: 124
+name: "Suppléments Lit additionnel Basse Saison"
+description: "1er enfant FREE / 2ème enfant tarif"
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 880.0
+totalStayAmountWoDiscount: 1520.0
+totalStayAmount: 1520.0
+finalAmountWoDiscount: 1824.0
+finalAmount: 1824.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
6 => App\DTO\ExtraStayDTO {#3849
-marginRate: 20
+extraId: 120
+name: "Suppléments Lit additionnel Intermédiaire"
+description: "1er enfant FREE / 2ème enfant tarif"
+stayTotalNights: 4
+dailyAdults: 220
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 880
+kidsExtrasAmount: 0
+stayExtrasAmount: 880
+stayRoomAmount: 880.0
+totalStayAmountWoDiscount: 1760.0
+totalStayAmount: 1760.0
+finalAmountWoDiscount: 2112.0
+finalAmount: 2112.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
7 => App\DTO\ExtraStayDTO {#3850
-marginRate: 20
+extraId: 118
+name: "Suppléments Lit additionnel Haute Saison Adulte"
+description: "1er enfant FREE / 2ème enfant tarif"
+stayTotalNights: 4
+dailyAdults: 260
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1040
+kidsExtrasAmount: 0
+stayExtrasAmount: 1040
+stayRoomAmount: 880.0
+totalStayAmountWoDiscount: 1920.0
+totalStayAmount: 1920.0
+finalAmountWoDiscount: 2304.0
+finalAmount: 2304.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
8 => App\DTO\ExtraStayDTO {#3851
-marginRate: 20
+extraId: 122
+name: "Suppléments Lit additionnel Pointe"
+description: "1er enfant FREE / 2ème enfant tarif"
+stayTotalNights: 4
+dailyAdults: 440
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1760
+kidsExtrasAmount: 0
+stayExtrasAmount: 1760
+stayRoomAmount: 880.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: []
}
2 => App\DTO\RoomStayDTO {#3798
-marginRate: 20
-id: 143
-name: "Chambre Supérieure Océan"
-slug: "chambre-superieure-ocean"
-picture: "/uploads/rooms/143/67162d5987a98559889227.jpg"
-description: "Pour ceux qui recherchent les vacances inoubliables, ne cherchez pas plus loin que nos 18 chambres Supérieures Océan. Avec une chambre de 43 m2 offrant une vue sur l’océan et toutes les commodités nécessaires, vous pourrez vous plonger dans la beauté époustouflante de votre environnement tout en profitant de l’expérience de vacances ultime."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 168
-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" => 250
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 250
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 250
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 250
"kids_price" => 0
]
]
"amount" => 1000
]
]
-totalRoomAmount: 1000.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:9 [
0 => App\DTO\ExtraStayDTO {#3852
-marginRate: 20
+extraId: 168
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1000.0
+totalStayAmountWoDiscount: 1000.0
+totalStayAmount: 1000.0
+finalAmountWoDiscount: 1200.0
+finalAmount: 1200.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#3853
-marginRate: 20
+extraId: 127
+name: "Suppléments repas Demi-pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 50
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 200
+kidsExtrasAmount: 0
+stayExtrasAmount: 200
+stayRoomAmount: 1000.0
+totalStayAmountWoDiscount: 1200.0
+totalStayAmount: 1200.0
+finalAmountWoDiscount: 1440.0
+finalAmount: 1440.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#3854
-marginRate: 20
+extraId: 128
+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: 1000.0
+totalStayAmountWoDiscount: 1320.0
+totalStayAmount: 1320.0
+finalAmountWoDiscount: 1584.0
+finalAmount: 1584.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#3855
-marginRate: 20
+extraId: 130
+name: "Suppléments repas Formule "Tout inclus""
+description: null
+stayTotalNights: 4
+dailyAdults: 120
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 480
+kidsExtrasAmount: 0
+stayExtrasAmount: 480
+stayRoomAmount: 1000.0
+totalStayAmountWoDiscount: 1480.0
+totalStayAmount: 1480.0
+finalAmountWoDiscount: 1776.0
+finalAmount: 1776.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
4 => App\DTO\ExtraStayDTO {#3856
-marginRate: 20
+extraId: 126
+name: "Suppléments Lit additionnel Très basse Saison"
+description: "1er enfant FREE / 2ème enfant tarif"
+stayTotalNights: 4
+dailyAdults: 140
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 560
+kidsExtrasAmount: 0
+stayExtrasAmount: 560
+stayRoomAmount: 1000.0
+totalStayAmountWoDiscount: 1560.0
+totalStayAmount: 1560.0
+finalAmountWoDiscount: 1872.0
+finalAmount: 1872.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
5 => App\DTO\ExtraStayDTO {#3857
-marginRate: 20
+extraId: 124
+name: "Suppléments Lit additionnel Basse Saison"
+description: "1er enfant FREE / 2ème enfant tarif"
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 1000.0
+totalStayAmountWoDiscount: 1640.0
+totalStayAmount: 1640.0
+finalAmountWoDiscount: 1968.0
+finalAmount: 1968.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
6 => App\DTO\ExtraStayDTO {#3858
-marginRate: 20
+extraId: 120
+name: "Suppléments Lit additionnel Intermédiaire"
+description: "1er enfant FREE / 2ème enfant tarif"
+stayTotalNights: 4
+dailyAdults: 220
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 880
+kidsExtrasAmount: 0
+stayExtrasAmount: 880
+stayRoomAmount: 1000.0
+totalStayAmountWoDiscount: 1880.0
+totalStayAmount: 1880.0
+finalAmountWoDiscount: 2256.0
+finalAmount: 2256.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
7 => App\DTO\ExtraStayDTO {#3859
-marginRate: 20
+extraId: 118
+name: "Suppléments Lit additionnel Haute Saison Adulte"
+description: "1er enfant FREE / 2ème enfant tarif"
+stayTotalNights: 4
+dailyAdults: 260
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1040
+kidsExtrasAmount: 0
+stayExtrasAmount: 1040
+stayRoomAmount: 1000.0
+totalStayAmountWoDiscount: 2040.0
+totalStayAmount: 2040.0
+finalAmountWoDiscount: 2448.0
+finalAmount: 2448.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
8 => App\DTO\ExtraStayDTO {#3860
-marginRate: 20
+extraId: 122
+name: "Suppléments Lit additionnel Pointe"
+description: "1er enfant FREE / 2ème enfant tarif"
+stayTotalNights: 4
+dailyAdults: 440
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1760
+kidsExtrasAmount: 0
+stayExtrasAmount: 1760
+stayRoomAmount: 1000.0
+totalStayAmountWoDiscount: 2760.0
+totalStayAmount: 2760.0
+finalAmountWoDiscount: 3312.0
+finalAmount: 3312.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
]
-specialExtras: []
-discounts: []
-error: []
}
3 => App\DTO\RoomStayDTO {#3797
-marginRate: 20
-id: 144
-name: "Chambre "Plage""
-slug: "chambre-plage"
-picture: "/uploads/rooms/144/67162e4812fbf981724190.jpg"
-description: "Pour profiter au maximum de l’air salin et des magnifiques couchers de soleil, optez pour l’une de nos 34 chambres Plage (à partir de 43 m2). En plus de la vue sur l’océan, elles offrent tout le confort dont vous rêvez pour passer de bonnes vacances."
-stayTotalNights: 4
-adults: 2
-kids: 0
-neededRooms: 1
-kidsRoomsCount: 0
-defaultExtraLabel: ""
-mandatoryExtraId: 168
-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" => 290
"kids_price" => 0
]
"2025-03-23" => array:2 [
"adults_price" => 290
"kids_price" => 0
]
"2025-03-24" => array:2 [
"adults_price" => 290
"kids_price" => 0
]
"2025-03-25" => array:2 [
"adults_price" => 290
"kids_price" => 0
]
]
"amount" => 1160
]
]
-totalRoomAmount: 1160.0
-totalRoomAmountDiscounted: null
-marginTotalRoom: null
-marginTotalRoomDiscounted: null
-communExtras: array:9 [
0 => App\DTO\ExtraStayDTO {#3861
-marginRate: 20
+extraId: 168
+name: "BASE - PETIT DEJEUNER"
+description: null
+stayTotalNights: 4
+dailyAdults: 0
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 0
+kidsExtrasAmount: 0
+stayExtrasAmount: 0
+stayRoomAmount: 1160.0
+totalStayAmountWoDiscount: 1160.0
+totalStayAmount: 1160.0
+finalAmountWoDiscount: 1392.0
+finalAmount: 1392.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
1 => App\DTO\ExtraStayDTO {#3862
-marginRate: 20
+extraId: 127
+name: "Suppléments repas Demi-pension"
+description: null
+stayTotalNights: 4
+dailyAdults: 50
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 200
+kidsExtrasAmount: 0
+stayExtrasAmount: 200
+stayRoomAmount: 1160.0
+totalStayAmountWoDiscount: 1360.0
+totalStayAmount: 1360.0
+finalAmountWoDiscount: 1632.0
+finalAmount: 1632.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
2 => App\DTO\ExtraStayDTO {#3863
-marginRate: 20
+extraId: 128
+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: 1160.0
+totalStayAmountWoDiscount: 1480.0
+totalStayAmount: 1480.0
+finalAmountWoDiscount: 1776.0
+finalAmount: 1776.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
3 => App\DTO\ExtraStayDTO {#3864
-marginRate: 20
+extraId: 130
+name: "Suppléments repas Formule "Tout inclus""
+description: null
+stayTotalNights: 4
+dailyAdults: 120
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 480
+kidsExtrasAmount: 0
+stayExtrasAmount: 480
+stayRoomAmount: 1160.0
+totalStayAmountWoDiscount: 1640.0
+totalStayAmount: 1640.0
+finalAmountWoDiscount: 1968.0
+finalAmount: 1968.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
4 => App\DTO\ExtraStayDTO {#3865
-marginRate: 20
+extraId: 126
+name: "Suppléments Lit additionnel Très basse Saison"
+description: "1er enfant FREE / 2ème enfant tarif"
+stayTotalNights: 4
+dailyAdults: 140
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 560
+kidsExtrasAmount: 0
+stayExtrasAmount: 560
+stayRoomAmount: 1160.0
+totalStayAmountWoDiscount: 1720.0
+totalStayAmount: 1720.0
+finalAmountWoDiscount: 2064.0
+finalAmount: 2064.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
5 => App\DTO\ExtraStayDTO {#3866
-marginRate: 20
+extraId: 124
+name: "Suppléments Lit additionnel Basse Saison"
+description: "1er enfant FREE / 2ème enfant tarif"
+stayTotalNights: 4
+dailyAdults: 160
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 640
+kidsExtrasAmount: 0
+stayExtrasAmount: 640
+stayRoomAmount: 1160.0
+totalStayAmountWoDiscount: 1800.0
+totalStayAmount: 1800.0
+finalAmountWoDiscount: 2160.0
+finalAmount: 2160.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
6 => App\DTO\ExtraStayDTO {#3867
-marginRate: 20
+extraId: 120
+name: "Suppléments Lit additionnel Intermédiaire"
+description: "1er enfant FREE / 2ème enfant tarif"
+stayTotalNights: 4
+dailyAdults: 220
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 880
+kidsExtrasAmount: 0
+stayExtrasAmount: 880
+stayRoomAmount: 1160.0
+totalStayAmountWoDiscount: 2040.0
+totalStayAmount: 2040.0
+finalAmountWoDiscount: 2448.0
+finalAmount: 2448.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
7 => App\DTO\ExtraStayDTO {#3868
-marginRate: 20
+extraId: 118
+name: "Suppléments Lit additionnel Haute Saison Adulte"
+description: "1er enfant FREE / 2ème enfant tarif"
+stayTotalNights: 4
+dailyAdults: 260
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1040
+kidsExtrasAmount: 0
+stayExtrasAmount: 1040
+stayRoomAmount: 1160.0
+totalStayAmountWoDiscount: 2200.0
+totalStayAmount: 2200.0
+finalAmountWoDiscount: 2640.0
+finalAmount: 2640.0
+extraDiscount: null
+extraKidsDiscount: null
+extraStartAt: null
+extraEndAt: null
+eventDuration: 0
+events: []
}
8 => App\DTO\ExtraStayDTO {#3869
-marginRate: 20
+extraId: 122
+name: "Suppléments Lit additionnel Pointe"
+description: "1er enfant FREE / 2ème enfant tarif"
+stayTotalNights: 4
+dailyAdults: 440
+dailyTeens: 0
+dailyChildren: 0
+dailyBabies: 0
+adultsExtrasAmount: 1760
+kidsExtrasAmount: 0
+stayExtrasAmount: 1760
+stayRoomAmount: 1160.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: []
}
]
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 {#4111
-elements: array:1 [
0 => App\Entity\Offers {#3940
-id: 216
-title: "FABULOUS OFFER"
-type: "Special"
-hotel: App\Entity\Hotels {#1154
-id: 23
-name: "Tamassa Resort"
-description: "Pourquoi ne pas planifier dès maintenant vos prochaines vacances ? Pour un séjour inoubliable, il vous faut un esprit de fête, des séances de cinéma sur la plage au crépuscule et des cocktails au bord de la piscine. Découvrez en avant-première l’hôtel Tamassa, à l’île Maurice : notre établissement quatre étoiles supérieure, aux beaux jardins tropicaux, est installé le long d’une plage de sable immaculé. Bercé par le bruissement du vent dans les palmes des cocotiers, il offre une vue splendide sur l’océan d’un bleu cobalt. Situé à Bel Ombre, dans le sud de l’île, Tamassa est entouré de magnifiques montagnes et de champs abondants de canne à sucre. Ici, une véritable joie de vivre s’associe à un design contemporain, pour offrir aux jeunes (et aux jeunes d’esprit) l’endroit idéal pour s’amuser et se détendre."
-website: "https://www.tamassaresorts.com/fr"
-stars: 4
-youtubeVideoId: "oHj1__k6hy0"
-phone: "+230 698 9800"
-email: "reservation@theluxcollective.com"
-active: true
-gmapUrl: "<iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3736.937588600313!2d57.41344501217992!3d-20.50878458093443!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x217c6fce6190d3f1%3A0x56a7d07495b9d0f3!2sTamassa%20Bel%20Ombre!5e0!3m2!1sfr!2sfr!4v1718969578943!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 {#1152
date: 2024-04-26 15:37:34.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729672825 {#1153
date: 2024-10-23 08:40:25.0 UTC (+00:00)
}
-rooms: Doctrine\ORM\PersistentCollection {#1155
#collection: Doctrine\Common\Collections\ArrayCollection {#1156
-elements: array:4 [
0 => App\Entity\Rooms {#1741
-id: 141
-name: "Chambre "Tamassa""
-description: "Avec 43m2 d’espace astucieusement conçus, c’est la chambre idéale. Nos 90 chambres Standard ont tout ce qu’il faut pour que vous vous sentiez comme à la maison. Wi-Fi gratuit 24h/24, minibar, smart TV et balcon ou patio spacieux. Vous pouvez même choisir entre la douche à l’italienne ou le plaisir d’un bain moussant ! Béneficiez de 20% de remise sur notre carte alimentaire au PLAYA pour toutes reservation en demi pension, pension complete & tout inclus."
-active: true
-hotel: App\Entity\Hotels {#1154}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#3731
-elements: array:1 [
0 => App\Entity\RoomPrices {#1734
-id: 1849
-title: "Chambre "Tamassa" Moyenne Saison"
-room: App\Entity\Rooms {#1741}
-quantity: null
-stayStartedAt: DateTimeImmutable @1737201600 {#1667
date: 2025-01-18 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746014400 {#1672
date: 2025-04-30 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1743
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1742
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "190.00"
-singleOccupancy: "180.00"
-tripleOccupancy: "0.00"
-active: true
-extraBaby: 0.0
-extraChild: 20.0
-extraTeen: 35.0
-defaultExtraLabel: "Petit-déjeuner"
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1740
#collection: Doctrine\Common\Collections\ArrayCollection {#1739
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1741}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1173 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1738
#collection: Doctrine\Common\Collections\ArrayCollection {#1737
-elements: array:7 [
0 => App\Entity\RoomCapacities {#1911
-id: 1639
-room: App\Entity\Rooms {#1741}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#1910
-id: 1640
-room: App\Entity\Rooms {#1741}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#1909
-id: 1641
-room: App\Entity\Rooms {#1741}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#1908
-id: 1642
-room: App\Entity\Rooms {#1741}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#1907
-id: 1643
-room: App\Entity\Rooms {#1741}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#1906
-id: 1644
-room: App\Entity\Rooms {#1741}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#1905
-id: 1645
-room: App\Entity\Rooms {#1741}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:7 [ …7]
-owner: App\Entity\Rooms {#1741}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1361 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1748
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729674888 {#1650
date: 2024-10-23 09:14:48.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "67162cf0c5fab854751288.jpg"
-gallery: App\Entity\Galleries {#1733
-id: 22
-hotel: null
-room: App\Entity\Rooms {#1741}
-images: Doctrine\ORM\PersistentCollection {#1732
#collection: Doctrine\Common\Collections\ArrayCollection {#1731
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1733}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1105 …}
}
-title: "Tamassa Chambre standard"
}
-mediaDirSlug: "141"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "chambre-tamassa"
}
1 => App\Entity\Rooms {#1724
-id: 142
-name: "Chambre Supérieure"
-description: "Pour votre plus grand confort, nos 64 chambres Supérieure (à partir de 43 m2) sont dotées de petits plus tels qu’une enceinte iPod ou une cafetière à piston. Les espaces modernes offrent une sensation d’ouverture avec des coins salon intérieurs/extérieurs !"
-active: true
-hotel: App\Entity\Hotels {#1154}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#3432
-elements: array:1 [
0 => App\Entity\RoomPrices {#1717
-id: 1860
-title: "Chambre Supérieure - Moyenne Saison (copie)"
-room: App\Entity\Rooms {#1724}
-quantity: null
-stayStartedAt: DateTimeImmutable @1737201600 {#1728
date: 2025-01-18 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746014400 {#1727
date: 2025-04-30 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1726
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1725
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "220.00"
-singleOccupancy: "210.00"
-tripleOccupancy: "110.00"
-active: true
-extraBaby: null
-extraChild: 20.0
-extraTeen: 35.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1723
#collection: Doctrine\Common\Collections\ArrayCollection {#1722
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1724}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1173 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1721
#collection: Doctrine\Common\Collections\ArrayCollection {#1720
-elements: array:13 [
0 => App\Entity\RoomCapacities {#1904
-id: 1646
-room: App\Entity\Rooms {#1724}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#1903
-id: 1647
-room: App\Entity\Rooms {#1724}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#1902
-id: 1648
-room: App\Entity\Rooms {#1724}
-adults: 3
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#1901
-id: 1649
-room: App\Entity\Rooms {#1724}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#1899
-id: 1650
-room: App\Entity\Rooms {#1724}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#1898
-id: 1651
-room: App\Entity\Rooms {#1724}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#1897
-id: 1652
-room: App\Entity\Rooms {#1724}
-adults: 3
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#1896
-id: 1653
-room: App\Entity\Rooms {#1724}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#1895
-id: 1654
-room: App\Entity\Rooms {#1724}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#1894
-id: 1655
-room: App\Entity\Rooms {#1724}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#1892
-id: 3279
-room: App\Entity\Rooms {#1724}
-adults: 1
-teens: 2
-children: null
-babies: null
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#1825
-id: 3489
-room: App\Entity\Rooms {#1724}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#1824
-id: 3490
-room: App\Entity\Rooms {#1724}
-adults: 1
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:13 [ …13]
-owner: App\Entity\Rooms {#1724}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1361 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1730
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729674982 {#1729
date: 2024-10-23 09:16:22.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "67162dc1c7d7a401353094.jpg"
-gallery: App\Entity\Galleries {#1716
-id: 23
-hotel: null
-room: App\Entity\Rooms {#1724}
-images: Doctrine\ORM\PersistentCollection {#1715
#collection: Doctrine\Common\Collections\ArrayCollection {#1714
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1716}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1105 …}
}
-title: "Tamassa Chambre supérieure"
}
-mediaDirSlug: "142"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "chambre-superieure-2"
}
2 => App\Entity\Rooms {#1707
-id: 143
-name: "Chambre Supérieure Océan"
-description: "Pour ceux qui recherchent les vacances inoubliables, ne cherchez pas plus loin que nos 18 chambres Supérieures Océan. Avec une chambre de 43 m2 offrant une vue sur l’océan et toutes les commodités nécessaires, vous pourrez vous plonger dans la beauté époustouflante de votre environnement tout en profitant de l’expérience de vacances ultime."
-active: true
-hotel: App\Entity\Hotels {#1154}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#3749
-elements: array:1 [
0 => App\Entity\RoomPrices {#1700
-id: 1870
-title: "Chambre Supérieure Océan Moyenne Saison"
-room: App\Entity\Rooms {#1707}
-quantity: null
-stayStartedAt: DateTimeImmutable @1737201600 {#1711
date: 2025-01-18 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746014400 {#1710
date: 2025-04-30 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1709
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1708
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "250.00"
-singleOccupancy: "240.00"
-tripleOccupancy: "110.00"
-active: true
-extraBaby: null
-extraChild: 20.0
-extraTeen: 35.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1706
#collection: Doctrine\Common\Collections\ArrayCollection {#1705
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1707}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1173 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1704
#collection: Doctrine\Common\Collections\ArrayCollection {#1703
-elements: array:15 [
0 => App\Entity\RoomCapacities {#1767
-id: 1656
-room: App\Entity\Rooms {#1707}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#1765
-id: 1657
-room: App\Entity\Rooms {#1707}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#1830
-id: 1658
-room: App\Entity\Rooms {#1707}
-adults: 3
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#1929
-id: 1659
-room: App\Entity\Rooms {#1707}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#1916
-id: 1660
-room: App\Entity\Rooms {#1707}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#1925
-id: 1661
-room: App\Entity\Rooms {#1707}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#1924
-id: 1662
-room: App\Entity\Rooms {#1707}
-adults: 3
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#1923
-id: 1663
-room: App\Entity\Rooms {#1707}
-adults: 3
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#1922
-id: 1664
-room: App\Entity\Rooms {#1707}
-adults: 3
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#1921
-id: 1665
-room: App\Entity\Rooms {#1707}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#1920
-id: 1666
-room: App\Entity\Rooms {#1707}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#1919
-id: 1667
-room: App\Entity\Rooms {#1707}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#1926
-id: 3475
-room: App\Entity\Rooms {#1707}
-adults: 1
-teens: 2
-children: null
-babies: null
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#1927
-id: 3491
-room: App\Entity\Rooms {#1707}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
14 => App\Entity\RoomCapacities {#1938
-id: 3492
-room: App\Entity\Rooms {#1707}
-adults: 1
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:15 [ …15]
-owner: App\Entity\Rooms {#1707}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1361 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1713
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729675038 {#1712
date: 2024-10-23 09:17:18.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "67162d5987a98559889227.jpg"
-gallery: App\Entity\Galleries {#1699
-id: 90
-hotel: null
-room: App\Entity\Rooms {#1707}
-images: Doctrine\ORM\PersistentCollection {#1698
#collection: Doctrine\Common\Collections\ArrayCollection {#1697
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1699}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1105 …}
}
-title: "Tamassa chambre superieure océan"
}
-mediaDirSlug: "143"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "chambre-superieure-ocean"
}
3 => App\Entity\Rooms {#1689
-id: 144
-name: "Chambre "Plage""
-description: "Pour profiter au maximum de l’air salin et des magnifiques couchers de soleil, optez pour l’une de nos 34 chambres Plage (à partir de 43 m2). En plus de la vue sur l’océan, elles offrent tout le confort dont vous rêvez pour passer de bonnes vacances."
-active: true
-hotel: App\Entity\Hotels {#1154}
-roomPrices: Doctrine\Common\Collections\ArrayCollection {#3770
-elements: array:1 [
0 => App\Entity\RoomPrices {#1648
-id: 1880
-title: "Chambre "Plage" Moyenne Saison"
-room: App\Entity\Rooms {#1689}
-quantity: null
-stayStartedAt: DateTimeImmutable @1737201600 {#1694
date: 2025-01-18 12:00:00.0 UTC (+00:00)
}
-stayEndedAt: DateTimeImmutable @1746014400 {#1693
date: 2025-04-30 12:00:00.0 UTC (+00:00)
}
-saleStartedAt: DateTimeImmutable @1725148800 {#1692
date: 2024-09-01 00:00:00.0 UTC (+00:00)
}
-saleEndedAt: DateTimeImmutable @1767181057 {#1690
date: 2025-12-31 11:37:37.0 UTC (+00:00)
}
-minNights: 1
-doubleOccupancy: "290.00"
-singleOccupancy: "280.00"
-tripleOccupancy: "110.00"
-active: true
-extraBaby: null
-extraChild: 20.0
-extraTeen: 35.0
-defaultExtraLabel: null
}
]
}
-stopSales: Doctrine\ORM\PersistentCollection {#1688
#collection: Doctrine\Common\Collections\ArrayCollection {#1687
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Rooms {#1689}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#970 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1173 …}
}
-roomCapacities: Doctrine\ORM\PersistentCollection {#1642
#collection: Doctrine\Common\Collections\ArrayCollection {#1644
-elements: array:14 [
0 => App\Entity\RoomCapacities {#1936
-id: 1668
-room: App\Entity\Rooms {#1689}
-adults: 1
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
1 => App\Entity\RoomCapacities {#1937
-id: 1669
-room: App\Entity\Rooms {#1689}
-adults: 2
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
2 => App\Entity\RoomCapacities {#1934
-id: 1670
-room: App\Entity\Rooms {#1689}
-adults: 3
-teens: null
-children: null
-babies: null
-isDefaultConfig: false
}
3 => App\Entity\RoomCapacities {#1935
-id: 1672
-room: App\Entity\Rooms {#1689}
-adults: 3
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
4 => App\Entity\RoomCapacities {#1932
-id: 1673
-room: App\Entity\Rooms {#1689}
-adults: 3
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
5 => App\Entity\RoomCapacities {#1933
-id: 1674
-room: App\Entity\Rooms {#1689}
-adults: 2
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
6 => App\Entity\RoomCapacities {#1930
-id: 1675
-room: App\Entity\Rooms {#1689}
-adults: 2
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
7 => App\Entity\RoomCapacities {#1931
-id: 1676
-room: App\Entity\Rooms {#1689}
-adults: 2
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
8 => App\Entity\RoomCapacities {#1928
-id: 1677
-room: App\Entity\Rooms {#1689}
-adults: 1
-teens: 1
-children: null
-babies: null
-isDefaultConfig: false
}
9 => App\Entity\RoomCapacities {#1941
-id: 1678
-room: App\Entity\Rooms {#1689}
-adults: 1
-teens: null
-children: 1
-babies: null
-isDefaultConfig: false
}
10 => App\Entity\RoomCapacities {#1942
-id: 1679
-room: App\Entity\Rooms {#1689}
-adults: 1
-teens: null
-children: null
-babies: 1
-isDefaultConfig: false
}
11 => App\Entity\RoomCapacities {#1943
-id: 3476
-room: App\Entity\Rooms {#1689}
-adults: 1
-teens: 2
-children: null
-babies: null
-isDefaultConfig: false
}
12 => App\Entity\RoomCapacities {#1944
-id: 3487
-room: App\Entity\Rooms {#1689}
-adults: 1
-teens: null
-children: 2
-babies: null
-isDefaultConfig: false
}
13 => App\Entity\RoomCapacities {#1945
-id: 3488
-room: App\Entity\Rooms {#1689}
-adults: 1
-teens: null
-children: null
-babies: 2
-isDefaultConfig: false
}
]
}
#initialized: true
-snapshot: array:14 [ …14]
-owner: App\Entity\Rooms {#1689}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#967 …}
-backRefFieldName: "room"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1361 …}
}
-createdAt: DateTimeImmutable @1717520580 {#1696
date: 2024-06-04 17:03:00.0 UTC (+00:00)
}
-updatedAt: DateTimeImmutable @1729675074 {#1695
date: 2024-10-23 09:17:54.0 UTC (+00:00)
}
-imageFile: null
-featuredImage: "67162e4812fbf981724190.jpg"
-gallery: App\Entity\Galleries {#1651
-id: 24
-hotel: null
-room: App\Entity\Rooms {#1689}
-images: Doctrine\ORM\PersistentCollection {#1652
#collection: Doctrine\Common\Collections\ArrayCollection {#1647
-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 {#1105 …}
}
-title: "Tamassa Chambre "plage""
}
-mediaDirSlug: "144"
-lowerRoomPrice: null
-services: array:1 [
0 => ""
]
-slug: "chambre-plage"
}
]
}
#initialized: true
-snapshot: array:4 [ …4]
-owner: App\Entity\Hotels {#1154}
-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, Bel Ombre, Île Maurice"
-checkInTime: "14:00"
-checkOutTime: "11:00"
-babyAgeMax: "6"
-childAgeMax: "12"
-teenAgeMax: "18"
-extraCharges: Doctrine\ORM\PersistentCollection {#1157
#collection: Doctrine\Common\Collections\ArrayCollection {#1158
-elements: array:9 [
0 => App\Entity\ExtraCharges {#3817
-id: 118
-title: "Suppléments Lit additionnel Haute Saison Adulte"
-description: "1er enfant FREE / 2ème enfant tarif"
-adultExtra: 130.0
-babyExtra: null
-childExtra: 20.0
-teenExtra: 35.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: false
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1154}
}
1 => App\Entity\ExtraCharges {#3816
-id: 120
-title: "Suppléments Lit additionnel Intermédiaire"
-description: "1er enfant FREE / 2ème enfant tarif"
-adultExtra: 110.0
-babyExtra: null
-childExtra: 30.0
-teenExtra: 35.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: false
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1154}
}
2 => App\Entity\ExtraCharges {#3814
-id: 122
-title: "Suppléments Lit additionnel Pointe"
-description: "1er enfant FREE / 2ème enfant tarif"
-adultExtra: 220.0
-babyExtra: null
-childExtra: 20.0
-teenExtra: 35.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: false
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1154}
}
3 => App\Entity\ExtraCharges {#3822
-id: 124
-title: "Suppléments Lit additionnel Basse Saison"
-description: "1er enfant FREE / 2ème enfant tarif"
-adultExtra: 80.0
-babyExtra: null
-childExtra: 20.0
-teenExtra: 35.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: false
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1154}
}
4 => App\Entity\ExtraCharges {#3824
-id: 126
-title: "Suppléments Lit additionnel Très basse Saison"
-description: "1er enfant FREE / 2ème enfant tarif"
-adultExtra: 70.0
-babyExtra: null
-childExtra: 20.0
-teenExtra: 35.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: false
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1154}
}
5 => App\Entity\ExtraCharges {#3825
-id: 127
-title: "Suppléments repas Demi-pension"
-description: null
-adultExtra: 25.0
-babyExtra: null
-childExtra: 13.0
-teenExtra: 25.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1154}
}
6 => App\Entity\ExtraCharges {#3826
-id: 128
-title: "Suppléments repas 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 {#1154}
}
7 => App\Entity\ExtraCharges {#3827
-id: 130
-title: "Suppléments repas Formule "Tout inclus""
-description: null
-adultExtra: 60.0
-babyExtra: null
-childExtra: 30.0
-teenExtra: 45.0
-stayStartedAt: null
-stayEndedAt: null
-isActive: true
-isMandatory: false
-minNights: null
-hotel: App\Entity\Hotels {#1154}
}
8 => App\Entity\ExtraCharges {#3828
-id: 168
-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 {#1154}
}
]
}
#initialized: true
-snapshot: array:9 [ …9]
-owner: App\Entity\Hotels {#1154}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#876 …}
-backRefFieldName: "hotel"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#952 …}
}
-imageFile: null
-featuredImage: "66965cff0682d056177502.jpg"
-gallery: App\Entity\Galleries {#1161
-id: 26
-hotel: App\Entity\Hotels {#1154}
-room: null
-images: Doctrine\ORM\PersistentCollection {#1162
#collection: Doctrine\Common\Collections\ArrayCollection {#1163
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Galleries {#1161}
-association: Doctrine\ORM\Mapping\OneToManyAssociationMapping {#934 …}
-backRefFieldName: "gallery"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#1105 …}
}
-title: "Tamassa Hotel"
}
-mediaDirSlug: null
-offers: Doctrine\Common\Collections\ArrayCollection {#4111}
-highlighted: false
-services: array:1 [
0 => ""
]
-hlStartAt: null
-hlEndAt: null
-slug: "tamassa-resort"
}
-description: null
-stayStartAt: DateTimeImmutable @1740268800 {#3936
date: 2025-02-23 00:00:00.0 UTC (+00:00)
}
-stayEndAt: DateTimeImmutable @1743379200 {#3937
date: 2025-03-31 00:00:00.0 UTC (+00:00)
}
-bookingStartAt: DateTimeImmutable @1739664000 {#3938
date: 2025-02-16 00:00:00.0 UTC (+00:00)
}
-bookingEndAt: DateTimeImmutable @1744675200 {#3939
date: 2025-04-15 00:00:00.0 UTC (+00:00)
}
-reference: "FABULOUS OFFER"
-minNights: null
-maxNights: null
-earlyBookingDays: null
-applyToAllRooms: true
-selectedRooms: Doctrine\ORM\PersistentCollection {#3941
#collection: Doctrine\Common\Collections\ArrayCollection {#3942
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#3940}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1077 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#942 …}
}
-discount: 25
-combinable: false
-selectedOffers: Doctrine\ORM\PersistentCollection {#3943
#collection: Doctrine\Common\Collections\ArrayCollection {#3944
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#3940}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1083 …}
-backRefFieldName: "offers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#958 …}
}
-offers: Doctrine\ORM\PersistentCollection {#3945
#collection: Doctrine\Common\Collections\ArrayCollection {#3946
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#3940}
-association: Doctrine\ORM\Mapping\ManyToManyInverseSideMapping {#1087 …}
-backRefFieldName: "selectedOffers"
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#958 …}
}
-combinableDiscount: null
-selectedExtras: Doctrine\ORM\PersistentCollection {#3947
#collection: Doctrine\Common\Collections\ArrayCollection {#3948
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#3940}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1089 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#952 …}
}
-active: true
-selectedExtrasDiscounted: Doctrine\ORM\PersistentCollection {#3949
#collection: Doctrine\Common\Collections\ArrayCollection {#3950
-elements: []
}
#initialized: false
-snapshot: []
-owner: App\Entity\Offers {#3940}
-association: Doctrine\ORM\Mapping\ManyToManyOwningSideMapping {#1095 …}
-backRefFieldName: null
-isDirty: false
-em: ContainerUIpB4Xl\EntityManagerGhost614a58f {#77 …12}
-typeClass: Doctrine\ORM\Mapping\ClassMetadata {#952 …}
}
-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 {#4190
-debug: true
+id: 216
+title: "FABULOUS OFFER"
+description: null
+type: "Special"
+reference: "FABULOUS OFFER"
+from: DateTimeImmutable @1740268800 {#3936
date: 2025-02-23 00:00:00.0 UTC (+00:00)
}
+to: DateTimeImmutable @1743379200 {#3937
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
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 {#1826
+classMetadata: array:1 [
"App\Entity\Rooms" => Vich\UploaderBundle\Metadata\ClassMetadata {#1200
+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 {#4375
+classMetadata: array:1 [
"App\Entity\Hotels" => Vich\UploaderBundle\Metadata\ClassMetadata {#4376
+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 {#4608
+classMetadata: array:1 [
"App\Entity\Slides" => Vich\UploaderBundle\Metadata\ClassMetadata {#4609
+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 {#4862
+classMetadata: array:1 [
"App\Entity\Images" => Vich\UploaderBundle\Metadata\ClassMetadata {#4863
+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 {#4864
+classMetadata: array:1 [
"App\Entity\Posts" => Vich\UploaderBundle\Metadata\ClassMetadata {#4816
+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 {#1200}
"App\Entity\Hotels" => Vich\UploaderBundle\Metadata\ClassMetadata {#4376}
"App\Entity\Slides" => Vich\UploaderBundle\Metadata\ClassMetadata {#4609}
"App\Entity\Images" => Vich\UploaderBundle\Metadata\ClassMetadata {#4863}
"App\Entity\Posts" => Vich\UploaderBundle\Metadata\ClassMetadata {#4816}
]
-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 {#5051
date: 2025-03-22 00:00:00.0 UTC (+00:00)
}
+toAt: DateTimeImmutable @1743033540 {#5052
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: []
}