1(function () { 2 // Variáveis injetadas pelo wp_localize_script 3 const GA_ID = fgxadData.ga_id; 4 const PIXEL_ID = fgxadData.pixel_id; 5 6 function loadGA() { 7 if (!GA_ID) return; 8 const s = document.createElement("script"); 9 s.src = "https://www.googletagmanager.com/gtag/js?id=" + GA_ID; 10 s.async = true; 11 document.head.appendChild(s); 12 window.dataLayer = window.dataLayer || []; 13 function gtag(){dataLayer.push(arguments);} 14 window.gtag = gtag; 15 gtag('js', new Date()); 16 gtag('config', GA_ID); 17 } 18 19 function loadPixel() { 20 if (!PIXEL_ID) return; 21 !function(f,b,e,v,n,t,s){ 22 if(f.fbq)return;n=f.fbq=function(){n.callMethod? 23 n.callMethod.apply(n,arguments):n.queue.push(arguments)}; 24 if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0'; 25 n.queue=[];t=b.createElement(e);t.async=!0; 26 t.src=v;s=b.getElementsByTagName(e)[0]; 27 s.parentNode.insertBefore(t,s) 28 }(window, document,'script','https://connect.facebook.net/en_US/fbevents.js'); 29 fbq('init', PIXEL_ID); 30 fbq('track', 'PageView'); 31 } 32 33 document.addEventListener("DOMContentLoaded", function () { 34 const popup = document.getElementById("cookie-popup"); 35 const fab = document.getElementById("cookie-fab"); 36 const acceptBtn = document.getElementById("accept-cookies"); 37 const closeBtn = document.getElementById("close-cookies"); 38 const analytics = document.getElementById("cookies-analytics"); 39 const marketing = document.getElementById("cookies-marketing"); 40 41 // Link da polÃtica dinâmico 42 const policyLink = document.getElementById("cookie-policy-link"); 43 if (policyLink && fgxadData.policy_url) { 44 policyLink.href = fgxadData.policy_url; 45 } 46 47 const saved = JSON.parse(localStorage.getItem("cookiePrefs")); 48 49 function openPopup() { 50 popup.classList.add("open"); 51 fab.classList.add("is-open"); // Controla a opacidade do FAB 52 } 53 54 function closePopup() { 55 popup.classList.remove("open"); 56 fab.classList.remove("is-open"); 57 } 58 59 // Estado inicial 60 if (saved) { 61 analytics.checked = saved.analytics; 62 marketing.checked = saved.marketing; 63 if (saved.analytics) loadGA(); 64 if (saved.marketing) loadPixel(); 65 } 66 // Nota: Removido o setTimeout que abria sozinho. O popup agora inicia fechado. 67 68 // FAB só abre no clique 69 fab.onclick = openPopup; 70 71 // Função unificada para Salvar e Fechar 72 function savePreferences() { 73 const prefs = { 74 necessary: true, 75 analytics: analytics.checked, 76 marketing: marketing.checked 77 }; 78 79 localStorage.setItem("cookiePrefs", JSON.stringify(prefs)); 80 closePopup(); 81 82 if (prefs.analytics) loadGA(); 83 if (prefs.marketing) loadPixel(); 84 } 85 86 // Ambos os botões salvam a seleção atual e fecham sem abrir de novo 87 acceptBtn.onclick = savePreferences; 88 closeBtn.onclick = savePreferences; 89 }); 90})();
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.