diff --git a/website/src/js/livestream.js b/website/src/js/livestream.js index 0b170bd9df..71941cffba 100644 --- a/website/src/js/livestream.js +++ b/website/src/js/livestream.js @@ -19,6 +19,15 @@ function showLocalTime() { local.removeAttribute('hidden'); } +function setSignupSource() { + const field = document.querySelector('input[name="SOURCE"]'); + if (!field) return; + + const inHash = new URLSearchParams(location.hash.replace(/^#\??/, '')).get('utm_source'); + const source = inHash ?? new URLSearchParams(location.search).get('utm_source'); + if (source && /^[\w.-]{1,40}$/.test(source)) field.value = source; +} + function setupRegisterOverlay() { const overlay = document.getElementById('register'); const openBtn = document.querySelector('.register-btn'); @@ -67,5 +76,6 @@ function trackNavColor() { } showLocalTime(); +setSignupSource(); setupRegisterOverlay(); trackNavColor(); diff --git a/website/src/livestream.html b/website/src/livestream.html index 093fae001b..57dd3c28af 100644 --- a/website/src/livestream.html +++ b/website/src/livestream.html @@ -96,6 +96,7 @@ templateEngineOverride: njk