From 02cb3bfc365f24a76f73012ef82af1229e39bb37 Mon Sep 17 00:00:00 2001 From: Sebin Nyshkim Date: Mon, 28 Jul 2025 16:16:36 +0200 Subject: [PATCH] fix: :chart_with_upwards_trend: record analytics when visitors agree instead of at next page load Only recording at next page load loses the referrer where a visit originated from --- src/js/ackee.js | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/src/js/ackee.js b/src/js/ackee.js index 87abdf6..732d942 100644 --- a/src/js/ackee.js +++ b/src/js/ackee.js @@ -3,20 +3,25 @@ const yesBtn = ackeeBanner.querySelector('#yes'); const noBtn = ackeeBanner.querySelector('#no'); const confirmKey = 'ackeeDetailed'; -yesBtn.addEventListener('click', () => localStorage.setItem(confirmKey, true)); +const ackeeServer = 'https://ackee.sebin-nyshkim.net'; +const ackeeDomainId = 'fc6deee5-c700-4c8a-87cd-421b673a33aa'; +const ackeeOpts = { detailed: true }; + +const record = (server, domainId, options) => { + const instance = ackeeTracker.create(server, options); + instance.record(domainId); +}; + +yesBtn.addEventListener('click', () => { + localStorage.setItem(confirmKey, true); + record(ackeeServer, ackeeDomainId, ackeeOpts); +}); noBtn.addEventListener('click', () => localStorage.setItem(confirmKey, false)); if (localStorage.getItem(confirmKey) === null) { ackeeBanner.show(); } -const ackeeServer = 'https://ackee.sebin-nyshkim.net'; -const ackeeDomainId = 'fc6deee5-c700-4c8a-87cd-421b673a33aa'; -const ackeeOpts = { - detailed: localStorage.getItem(confirmKey) === 'true' -}; - if (localStorage.getItem(confirmKey) === 'true') { - const instance = ackeeTracker.create(ackeeServer, ackeeOpts); - instance.record(ackeeDomainId); + record(ackeeServer, ackeeDomainId, ackeeOpts); }