From ac9e10b436cfcc694c67029dc3c771422fd4e141 Mon Sep 17 00:00:00 2001 From: Usman Baig Date: Thu, 19 Mar 2026 13:56:18 +0100 Subject: [PATCH] fix: auto-detect domain from hostname for zero-config GTM support When data-domain attribute and pulseConfig are both unavailable (common with GTM which strips data-* attributes), the script now falls back to location.hostname. This is safe because the backend already validates Origin/Referer against the registered domain. Strips www. prefix on auto-detected hostname to match typical Pulse registration patterns. --- public/script.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/public/script.js b/public/script.js index 1a15f6d..12c076d 100644 --- a/public/script.js +++ b/public/script.js @@ -40,7 +40,10 @@ return (script && script.hasAttribute('data-' + name)) || globalConfig[name] === true || globalConfig[camel] === true; } - const domain = attr('domain'); + // * Resolve domain: explicit config > data-domain > auto-detect from hostname + // * Auto-detect enables zero-config GTM installs; the backend validates Origin anyway + var explicitDomain = attr('domain'); + const domain = explicitDomain || location.hostname.replace(/^www\./, ''); if (!domain) { return; }