diff --git a/public/scripts/packages/marketing/package.json b/public/scripts/packages/marketing/package.json index e8c3ce13442e9..efad692f2fb7f 100644 --- a/public/scripts/packages/marketing/package.json +++ b/public/scripts/packages/marketing/package.json @@ -1,6 +1,6 @@ { "name": "@deriv-com/marketing-utils", - "version": "1.0.15", + "version": "1.0.16", "type": "module", "repository": { "type": "git", diff --git a/public/scripts/packages/marketing/src/cookie.js b/public/scripts/packages/marketing/src/cookie.js index c3732fc21bebc..7286c8b40418a 100644 --- a/public/scripts/packages/marketing/src/cookie.js +++ b/public/scripts/packages/marketing/src/cookie.js @@ -229,6 +229,10 @@ function DerivMarketingCookies() { } }); + let potential_mistagging = true; + let overwrite_happened = false; + let dropped_affiliate_tracking = null; + if (shouldOverwrite(utm_data, current_utm_data)) { eraseCookie("affiliate_tracking"); eraseCookie("utm_data"); @@ -239,6 +243,9 @@ function DerivMarketingCookies() { .replaceAll("%7D", "}"); setCookie("utm_data", utm_data_cookie); + overwrite_happened = true; + } else { + potential_mistagging = false; } /* end handling UTMs */ @@ -247,6 +254,11 @@ function DerivMarketingCookies() { const isAffiliateTokenExist = searchParams.has("t") || searchParams.has("affiliate_token"); if (isAffiliateTokenExist) { + if (overwrite_happened) { + dropped_affiliate_tracking = getCookie("affiliate_token"); + potential_mistagging = false; + } + eraseCookie("affiliate_tracking"); const affiliateToken = searchParams.get("t") || searchParams.get("affiliate_token"); @@ -257,6 +269,11 @@ function DerivMarketingCookies() { eraseCookie("affiliate_tracking"); const sidcValue = searchParams.get("sidc"); setCookie("affiliate_tracking", sidcValue); + + if (overwrite_happened) { + dropped_affiliate_tracking = getCookie("affiliate_token"); + potential_mistagging = false; + } } /* end handling affiliate tracking */ @@ -429,6 +446,9 @@ function DerivMarketingCookies() { trackEvent("debug_marketing_cookies", { marketing_cookies: getStringifiedCookies(), cookie_status: testCookieFunctionality(), + potential_mistagging, + overwrite_happened, + dropped_affiliate_tracking, }); }, 1000); } else if (retries > 0) {