Merged in feat/BOOK-131-tracking-no-availability (pull request #2886)

feat(BOOK-131): add no availability tracking

* feat(BOOK-131): add no availability tracking

* feat(BOOK-131): add no availability tracking

* feat(BOOK-131): extract noAvailability function

* feat(BOOK-131): fix every render problem

* feat(BOOK-131): noavailability handle return in function


Approved-by: Erik Tiekstra
Approved-by: Joakim Jäderberg
This commit is contained in:
Bianca Widstam
2025-10-07 06:59:49 +00:00
parent 973a665aba
commit 30b214c6ff
12 changed files with 393 additions and 57 deletions

View File

@@ -4,6 +4,7 @@ import { notFound } from "next/navigation"
import { Suspense } from "react"
import { FamilyAndFriendsCodes } from "@scandic-hotels/common/constants/familyAndFriends"
import { NoAvailabilityTracking } from "@scandic-hotels/tracking/NoAvailabilityTracking"
import { TrackingSDK } from "@scandic-hotels/tracking/TrackingSDK"
import FnFNotAllowedAlert from "../components/FnFNotAllowedAlert"
@@ -85,7 +86,7 @@ export async function SelectHotelPage({
arrivalDate,
departureDate,
hotelsResult: hotels?.length ?? 0,
searchTerm: booking.hotelId,
searchTerm: city.name,
country: hotels?.[0]?.hotel.address.country,
hotelCity: hotels?.[0]?.hotel.address.city,
bookingCode: booking.bookingCode,
@@ -96,6 +97,11 @@ export async function SelectHotelPage({
const suspenseKey = stringify(searchParams)
const shouldTrackNoAvailability = !!(
hotels.every((hotel) => hotel.availability.status !== "Available") ||
(booking.bookingCode && hotels.length > 0 && !isBookingCodeRateAvailable)
)
return (
<>
<SelectHotel
@@ -111,6 +117,12 @@ export async function SelectHotelPage({
hotelInfo={hotelsTrackingData}
pageData={pageTrackingData}
/>
<NoAvailabilityTracking
lang={lang}
hotelsTrackingData={hotelsTrackingData}
pageTrackingData={pageTrackingData}
shouldTrackNoAvailability={shouldTrackNoAvailability}
/>
</Suspense>
</>
)