From e4c6e454c4274921e0e50990faf238a1ab279cd6 Mon Sep 17 00:00:00 2001 From: Linus Flood Date: Fri, 1 Nov 2024 08:05:27 +0100 Subject: [PATCH] Refactor --- server/routers/contentstack/accountPage/query.ts | 1 + server/routers/contentstack/contentPage/query.ts | 1 + server/routers/contentstack/loyaltyPage/query.ts | 1 + types/components/tracking.ts | 4 ++-- utils/tracking.ts | 10 ++++++++-- 5 files changed, 13 insertions(+), 4 deletions(-) diff --git a/server/routers/contentstack/accountPage/query.ts b/server/routers/contentstack/accountPage/query.ts index d68682494..7e1b0f3b3 100644 --- a/server/routers/contentstack/accountPage/query.ts +++ b/server/routers/contentstack/accountPage/query.ts @@ -198,6 +198,7 @@ export const accountPageQueryRouter = router({ channel: TrackingChannelEnum["scandic-friends"], pageType: `member${parsedtitle}page`, pageName: validatedAccountPage.data.trackingProps.url, + siteSections: validatedAccountPage.data.trackingProps.url, } return { diff --git a/server/routers/contentstack/contentPage/query.ts b/server/routers/contentstack/contentPage/query.ts index 44a765c49..2c110db39 100644 --- a/server/routers/contentstack/contentPage/query.ts +++ b/server/routers/contentstack/contentPage/query.ts @@ -129,6 +129,7 @@ export const contentPageQueryRouter = router({ channel: TrackingChannelEnum["static-content-page"], pageType: "staticcontentpage", pageName: contentPage.data.trackingProps.url, + siteSections: contentPage.data.trackingProps.url, } return { diff --git a/server/routers/contentstack/loyaltyPage/query.ts b/server/routers/contentstack/loyaltyPage/query.ts index 76bbc560e..a31661cda 100644 --- a/server/routers/contentstack/loyaltyPage/query.ts +++ b/server/routers/contentstack/loyaltyPage/query.ts @@ -182,6 +182,7 @@ export const loyaltyPageQueryRouter = router({ channel: TrackingChannelEnum["scandic-friends"], pageType: "loyaltycontentpage", pageName: validatedLoyaltyPage.data.trackingProps.url, + siteSections: validatedLoyaltyPage.data.trackingProps.url, } getLoyaltyPageSuccessCounter.add(1, metricsVariables) console.info( diff --git a/types/components/tracking.ts b/types/components/tracking.ts index 2544984e8..ea0a26adc 100644 --- a/types/components/tracking.ts +++ b/types/components/tracking.ts @@ -18,9 +18,9 @@ export type TrackingSDKPageData = { pageType: string channel: TrackingChannel siteVersion?: "new-web" - pageName: string | null + pageName: string domain?: string - siteSections?: string + siteSections: string pageLoadTime?: number // Page load time in seconds } diff --git a/utils/tracking.ts b/utils/tracking.ts index cc7432cb2..6f0f9ddaf 100644 --- a/utils/tracking.ts +++ b/utils/tracking.ts @@ -36,16 +36,22 @@ export function trackLoginClick(position: TrackingPosition) { export function createSDKPageObject( trackingData: TrackingSDKData ): TrackingSDKData { - let pageName = trackingData.pageName?.split("/").slice(1).join("|") ?? "" + let pageName = convertSlashToPipe(trackingData.pageName) + let siteSections = convertSlashToPipe(trackingData.siteSections) if (trackingData.pathName.indexOf("/webview/") > -1) { pageName = "webview|" + pageName + siteSections = "webview|" + siteSections } return { ...trackingData, domain: window.location.host, pageName: pageName, - siteSections: trackingData.siteSections ?? pageName, + siteSections: siteSections, } } + +function convertSlashToPipe(url: string) { + return url?.split("/").slice(1).join("|") ?? "" +}