Files
web/apps/partner-sas/app/[lang]/hotelreservation/(payment-callback)/payment-callback/[status]/page.tsx
Linus Flood 3bd23bf56e Merged in feat/book-595-gla-tracking-fix (pull request #3294)
feat(BOOK-595): fixed correct tracking values and enter details pageview tracking

* feat(BOOK-595): fixed correct tracking values and enter details pageview tracking

* Fixed on SAS as well


Approved-by: Joakim Jäderberg
2025-12-05 08:01:48 +00:00

54 lines
1.7 KiB
TypeScript

import { PaymentCallbackPage as PaymentCallbackPagePrimitive } from "@scandic-hotels/booking-flow/pages/PaymentCallbackPage"
import { logger } from "@scandic-hotels/common/logger"
import { TrackingSDK } from "@scandic-hotels/tracking/TrackingSDK"
import {
TrackingChannelEnum,
type TrackingSDKPageData,
} from "@scandic-hotels/tracking/types"
import { bookingFlowConfig } from "@/constants/bookingFlowConfig"
import { getSocialSession, isValidSocialSession } from "@/auth/scandic/session"
import type { PaymentCallbackStatusEnum } from "@scandic-hotels/common/constants/paymentCallbackStatusEnum"
import type { LangParams, PageArgs } from "@/types/params"
export default async function PaymentCallbackPage(
props: PageArgs<LangParams & { status: string }>
) {
const searchParams = await props.searchParams
const params = await props.params
logger.debug(`[payment-callback] callback started`)
const lang = params.lang
let userAccessToken = null
const session = await getSocialSession()
if (isValidSocialSession(session)) {
userAccessToken = session.access_token
}
const pageTrackingData: TrackingSDKPageData = {
pageId: "payment-callback",
domainLanguage: lang,
channel: TrackingChannelEnum["hotelreservation"],
pageName: "hotelreservation|payment-callback",
siteSections: "hotelreservation|payment-callback",
pageType: "payment-callbackpage",
siteVersion: "new-web",
}
return (
<>
<TrackingSDK pageData={pageTrackingData} />
<PaymentCallbackPagePrimitive
lang={lang}
userAccessToken={userAccessToken}
searchParams={searchParams}
status={params.status as PaymentCallbackStatusEnum}
config={bookingFlowConfig}
/>
</>
)
}