Untitled
unknown
plain_text
21 days ago
2.2 kB
2
Indexable
<script> document.addEventListener('DOMContentLoaded', function () { // Funkcja do szyfrowania danych za pomocą SHA-256 async function hashData(data) { const encoder = new TextEncoder(); const dataBuffer = encoder.encode(data); const hashBuffer = await crypto.subtle.digest('SHA-256', dataBuffer); return Array.from(new Uint8Array(hashBuffer)) .map(byte => byte.toString(16).padStart(2, '0')) .join(''); } // Lista formularzy do obsługi const formIds = [ 'form-branding', 'form-seo', 'form-reklamy', 'form-video', 'form-strony', 'form-obsluga', 'form-commerce', 'form-b2b', 'form-rolki', 'form-studies', 'form-onas', 'form-kontakt' ]; // Przejdź przez każdy formularz i dodaj odpowiednie nasłuchiwanie formIds.forEach(formId => { const form = document.getElementById(formId); // Sprawdź, czy formularz istnieje na stronie if (form) { form.addEventListener('submit', async function (e) { // Pobierz dane z formularza const name = form.querySelector('#name')?.value || ''; const phoneNumber = form.querySelector('#phone-number')?.value || ''; const email = form.querySelector('#e-mail')?.value || ''; // Szyfruj dane const hashedName = await hashData(name); const hashedPhone = await hashData(phoneNumber); const hashedEmail = await hashData(email); // Twórz nazwę zdarzenia na podstawie ID formularza const formName = formId.replace('form-', ''); const eventName = `formSubmission_${formName}`; // Wyślij dane do Data Layer window.dataLayer = window.dataLayer || []; window.dataLayer.push({ event: eventName, formData: { name: hashedName, phoneNumber: hashedPhone, email: hashedEmail, }, }); console.log(`Zdarzenie ${eventName} wysłane do Data Layer.`); }); } else { console.error(`Formularz z ID "${formId}" nie został znaleziony.`); } }); }); </script>
Editor is loading...
Leave a Comment