function getCookie(name) { var match = document.cookie.match(new RegExp('(^| )' + name + '=([^;]+)')); return match ? match[2] : null; } function setCookie(name, value, days) { var d = new Date(); d.setTime(d.getTime() + (days*24*60*60*1000)); document.cookie = name + "=" + value + ";path=/;expires=" + d.toUTCString(); } var params = new URLSearchParams(window.location.search); var gclid = params.get('gclid'); var fbclid = params.get('fbclid'); if (gclid) setCookie('gclid', gclid, 90); if (fbclid) setCookie('fbclid', fbclid, 7); var attempts = 0; var interval = setInterval(function() { attempts++; var form = document.getElementById('frm-generatedForm-contact-form'); if (!form) { if (attempts > 30) clearInterval(interval); return; } clearInterval(interval); if (form.dataset.gclidBound) return; form.dataset.gclidBound = '1'; form.addEventListener('submit', function() { if (!form.checkValidity()) return; var lastSent = sessionStorage.getItem('gclidLastSent'); var now = Date.now(); if (lastSent && (now - parseInt(lastSent)) < 5000) return; sessionStorage.setItem('gclidLastSent', now); var gclidVal = getCookie('gclid') || ''; var fbclidVal = getCookie('fbclid') || ''; var zdroj = gclidVal ? 'Google' : (fbclidVal ? 'Meta' : ''); var data = { name: form.querySelector('[name="name"]') ? form.querySelector('[name="name"]').value : '', phone: form.querySelector('[name="phone"]') ? form.querySelector('[name="phone"]').value : '', email: form.querySelector('[name="email"]') ? form.querySelector('[name="email"]').value : '', address: form.querySelector('[name="address"]') ? form.querySelector('[name="address"]').value : '', message: form.querySelector('[name="message"]') ? form.querySelector('[name="message"]').value : '', build: form.querySelector('[name="build"]:checked') ? form.querySelector('[name="build"]:checked').value : '', gclid: gclidVal, fbclid: fbclidVal, zdroj: zdroj }; navigator.sendBeacon( 'https://script.google.com/macros/s/AKfycbxnYC0lpoJshusz4YnntmUMjArmcjd_A5lzRJwJUvevC7kpU4LX6242BgPg4mj80Lyk/exec', JSON.stringify(data) ); }); }, 300);