Merged in feat/sw-3545-update-sas-userinfo-tracking (pull request #2982)
feat(SW-3545): Update partner-sas userinfo tracking * Update loginType to eurobonus * Remove tracking booking code properties when disabled * Add EB user data to tracking * Fix type issue Approved-by: Joakim Jäderberg
This commit is contained in:
@@ -4,6 +4,7 @@ import { useEffect, useState } from "react"
|
||||
|
||||
import { TrackingSDK } from "@scandic-hotels/tracking/TrackingSDK"
|
||||
|
||||
import { useBookingFlowConfig } from "../../../bookingFlowConfig/bookingFlowConfigContext"
|
||||
import { clearPaymentInfoSessionStorage } from "../../../components/EnterDetails/Payment/helpers"
|
||||
import useLang from "../../../hooks/useLang"
|
||||
import { useSearchHistory } from "../../../hooks/useSearchHistory"
|
||||
@@ -23,6 +24,7 @@ export default function BookingConfirmationTracking({
|
||||
}) {
|
||||
const lang = useLang()
|
||||
const bookingRooms = useBookingConfirmationStore((state) => state.rooms)
|
||||
const config = useBookingFlowConfig()
|
||||
|
||||
const [loadedBookingConfirmationRefId] = useState(() => {
|
||||
if (typeof window !== "undefined") {
|
||||
@@ -47,6 +49,7 @@ export default function BookingConfirmationTracking({
|
||||
bookingConfirmation.booking,
|
||||
bookingConfirmation.hotel,
|
||||
rooms,
|
||||
config,
|
||||
searchTerm
|
||||
)
|
||||
}
|
||||
|
||||
@@ -14,6 +14,7 @@ import {
|
||||
import { BreakfastPackageEnum } from "@scandic-hotels/trpc/enums/breakfast"
|
||||
import { RoomPackageCodeEnum } from "@scandic-hotels/trpc/enums/roomFilter"
|
||||
|
||||
import { type BookingFlowConfig } from "../../../bookingFlowConfig/bookingFlowConfig"
|
||||
import { invertedBedTypeMap } from "../../../utils/SelectRate"
|
||||
import { getSpecialRoomType } from "../../../utils/specialRoomType"
|
||||
import { readPaymentInfoFromSessionStorage } from "../../EnterDetails/Payment/helpers"
|
||||
@@ -63,6 +64,7 @@ export function getTracking(
|
||||
booking: BookingConfirmation["booking"],
|
||||
hotel: BookingConfirmation["hotel"],
|
||||
rooms: Room[],
|
||||
config: Pick<BookingFlowConfig, "bookingCodeEnabled">,
|
||||
searchTerm?: string
|
||||
) {
|
||||
const arrivalDate = new Date(booking.checkInDate)
|
||||
@@ -96,6 +98,13 @@ export function getTracking(
|
||||
)
|
||||
.map((pkg) => mapAncillaryPackage(pkg, hotel.operaId))
|
||||
|
||||
const bookingCodeProperties = {
|
||||
bookingCode: rooms.map((room) => room.bookingCode ?? "n/a").join(", "),
|
||||
bookingCodeAvailability: booking.bookingCode
|
||||
? rooms.map((room) => (room.bookingCode ? "true" : "false")).join(", ")
|
||||
: undefined,
|
||||
}
|
||||
|
||||
const hotelsTrackingData: TrackingSDKHotelInfo = {
|
||||
ageOfChildren: rooms.map((r) => r.childrenAges?.join(",") ?? "").join("|"),
|
||||
analyticsRateCode: rooms
|
||||
@@ -107,10 +116,7 @@ export function getTracking(
|
||||
.join(",")
|
||||
.toLowerCase(),
|
||||
bnr: rooms.map((r) => r.confirmationNumber).join(","),
|
||||
bookingCode: rooms.map((room) => room.bookingCode ?? "n/a").join(", "),
|
||||
bookingCodeAvailability: booking.bookingCode
|
||||
? rooms.map((room) => (room.bookingCode ? "true" : "false")).join(", ")
|
||||
: undefined,
|
||||
...(config.bookingCodeEnabled ? bookingCodeProperties : {}),
|
||||
bookingTypeofDay: isWeekend(arrivalDate) ? "weekend" : "weekday",
|
||||
breakfastOption: rooms
|
||||
.map((r) => {
|
||||
|
||||
Reference in New Issue
Block a user