/** * AegisSight Analytics - Custom Events * Trackt wichtige Nutzerinteraktionen via Umami */ (function() { "use strict"; // Nur tracken wenn umami geladen ist function track(name, data) { if (typeof umami !== "undefined" && umami.track) { umami.track(name, data); } } document.addEventListener("DOMContentLoaded", function() { // 1. Produkt-Tab geklickt document.querySelectorAll("[data-translate]").forEach(function(el) { if (el.closest(".products-section, .product-card, .tab-button")) { el.addEventListener("click", function() { var text = el.textContent.trim().substring(0, 50); track("Produkt-Interesse", { element: text }); }); } }); // 2. About-Tabs (Unternehmen, Mission, Kernkompetenzen, Versprechen) document.querySelectorAll(".about-tab, .tab-btn, [data-tab]").forEach(function(el) { el.addEventListener("click", function() { var tab = el.getAttribute("data-tab") || el.textContent.trim().substring(0, 30); track("About-Tab", { tab: tab }); }); }); // 3. Kontaktbereich erreicht (Scroll) var contactTracked = false; var observer = new IntersectionObserver(function(entries) { entries.forEach(function(entry) { if (entry.isIntersecting && !contactTracked) { contactTracked = true; track("Kontakt-Bereich-erreicht"); } }); }, { threshold: 0.5 }); var footer = document.querySelector("footer, .contact-section, #kontakt, #contact"); if (footer) observer.observe(footer); // 4. Sprachenwechsel document.querySelectorAll(".lang-switch, .language-btn, [data-lang]").forEach(function(el) { el.addEventListener("click", function() { var lang = el.getAttribute("data-lang") || el.textContent.trim(); track("Sprachenwechsel", { sprache: lang }); }); }); // 5. Lagebild-Seite: Tab gewechselt if (window.location.pathname.indexOf("lagen") > -1) { document.querySelectorAll(".tab-button, [data-tab]").forEach(function(el) { el.addEventListener("click", function() { var tab = el.getAttribute("data-tab") || el.textContent.trim().substring(0, 30); track("Lagebild-Tab", { tab: tab }); }); }); track("Lagebild-Besuch"); } // 6. AccountForger Video aufgerufen if (window.location.pathname.indexOf("accountforger") > -1) { track("AccountForger-Video-Aufruf"); } }); })();