Tracking WIP
This commit is contained in:
@@ -2,6 +2,7 @@ import { TrackingPosition, TrackingSDKData } from "@/types/components/tracking"
|
||||
|
||||
export function trackClick(name: string) {
|
||||
if (typeof window !== "undefined" && window.adobeDataLayer) {
|
||||
console.log("TRACKING: Tracking click", name)
|
||||
window.adobeDataLayer.push({
|
||||
event: "linkClick",
|
||||
cta: {
|
||||
@@ -13,6 +14,7 @@ export function trackClick(name: string) {
|
||||
|
||||
export function trackPageViewStart() {
|
||||
if (typeof window !== "undefined" && window.adobeDataLayer) {
|
||||
console.log("TRACKING: Tracking pageViewStart")
|
||||
window.adobeDataLayer.push({
|
||||
event: "pageViewStart",
|
||||
})
|
||||
@@ -21,6 +23,7 @@ export function trackPageViewStart() {
|
||||
|
||||
export function trackLoginClick(position: TrackingPosition) {
|
||||
if (typeof window !== "undefined" && window.adobeDataLayer) {
|
||||
console.log("TRACKING: Tracking loginStart, position", position)
|
||||
const loginEvent = {
|
||||
event: "loginStart",
|
||||
login: {
|
||||
@@ -33,26 +36,20 @@ export function trackLoginClick(position: TrackingPosition) {
|
||||
}
|
||||
}
|
||||
|
||||
export function createSDKPageObject(trackingData: TrackingSDKData) {
|
||||
export function createSDKPageObject(
|
||||
trackingData: TrackingSDKData
|
||||
): TrackingSDKData {
|
||||
const [lang, ...segments] = trackingData.pathName
|
||||
.split("/")
|
||||
.filter((seg: string) => seg)
|
||||
|
||||
const joinedSegments = segments.join("|")
|
||||
|
||||
const { host: domain } = window.location
|
||||
const page_obj = {
|
||||
pageType: trackingData.pageType,
|
||||
pageName: joinedSegments,
|
||||
pageId: trackingData.pageId,
|
||||
channel: trackingData.channel,
|
||||
siteSection: joinedSegments,
|
||||
domain,
|
||||
siteversion: "new-web",
|
||||
domainlanguage: trackingData.lang ? trackingData.lang : lang,
|
||||
createDate: trackingData.createdDate,
|
||||
publishDate: trackingData.publishedDate,
|
||||
// sessionid: "<unique identifier of session>", // base on what?
|
||||
return {
|
||||
...trackingData,
|
||||
domain: window.location.host,
|
||||
pageName: trackingData.pageName ?? joinedSegments,
|
||||
siteSections: trackingData.siteSections ?? joinedSegments,
|
||||
domainLanguage: trackingData.domainLanguage ?? lang,
|
||||
}
|
||||
return page_obj
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user