Untitled
unknown
plain_text
9 months ago
2.4 kB
5
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 surname = form.querySelector('#surname')?.value || '';
const phoneNumber = form.querySelector('#phone-number')?.value || '';
const email = form.querySelector('#e-mail')?.value || '';
// Szyfruj dane
const hashedName = await hashData(name);
const hashedSurname = await hashData(surname);
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,
surname: hashedSurname,
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