1 2const locationCookiesAnalytics = window.location.origin; 3const REJECT_COOKIES_CLASS = 'js-cookies-reject'; 4const ACCEPT_COOKIES_CLASS = 'js-cookies-accept'; 5const REJECT_PERSONALIZATION_COOKIES_ID = 'functionality-check'; 6const REJECT_MEDITION_COOKIES_ID= 'analysis-check'; 7 8// Obtenemos boton cookies una vez cargada toda la pagina 9document.addEventListener('DOMContentLoaded', function(event) { 10 let reject = true; 11 let reject_p = true; 12 let reject_m = true; 13 let accept = false; 14 // Caso "rechazo cookies" 15 if(document.querySelector('.'+REJECT_COOKIES_CLASS)){ 16 17 const cookieButton = document.querySelector('.'+REJECT_COOKIES_CLASS); 18 // Verificar si el usuario ya ha hecho click 19 const hasClicked = localStorage.getItem('cookieClick'); 20 21 // Manejar el click en el boton 22 cookieButton.addEventListener('click', function() { 23 // Si el usuario aún no ha hecho click, registrarlo 24 if (!hasClicked) { 25 reject = true; 26 reject_p = true; 27 reject_m = true; 28 accept = false; 29 //localStorage.setItem('cookieClick', 'true'); 30 sendCookiesData(accept, reject, reject_m, reject_p); 31 } 32 33 }); 34 } 35 36 // Caso "aceptar cookies" 37 const cookieAcceptButtons = document.querySelectorAll('.' + ACCEPT_COOKIES_CLASS); 38 39 cookieAcceptButtons.forEach((cookieButton) => { 40 // Verificar si el usuario ya ha hecho click 41 const hasClicked = localStorage.getItem('cookieClick'); 42 43 // Manejar el click en cada botón 44 cookieButton.addEventListener('click', function () { 45 let accept = false; 46 let reject = true; 47 48 // Revisar el estado de las cookies opcionales 49 let reject_p = document.getElementById(REJECT_PERSONALIZATION_COOKIES_ID)?.checked !== true; 50 let reject_m = document.getElementById(REJECT_MEDITION_COOKIES_ID)?.checked !== true; 51 52 // Si el usuario aún no ha hecho click 53 if (!hasClicked) { 54 accept = true; 55 reject = false; 56 //localStorage.setItem('cookieClick', 'true'); 57 sendCookiesData(accept, reject, reject_m, reject_p); 58 } 59 }); 60 }); 61 62}); 63 64// Mandar datos de cookies al backend 65async function sendCookiesData(accept, reject, reject_m, reject_p) { 66 try { 67 let clickData = { 68 accepted: accept, 69 rejected: reject, 70 rejectedMeasurement: reject_m, 71 rejectedPersonalization: reject_p 72 }; 73 let path = ''; 74 if(window.location.href.includes("/magnoliaAuthor")){ 75 path += "/magnoliaAuthor"; 76 } 77 path = path + '/.rest/analiticas/cookies/cookieAnalytics'; 78 79 const response = await fetch(path, { 80 method: 'POST', 81 headers: { 82 'Content-Type': 'application/json', 83 'Origin': locationCookiesAnalytics 84 }, 85 body: JSON.stringify(clickData) 86 }); 87 88 if (response.ok) { 89 console.log('Data recorded successfully.'); 90 } else { 91 console.error('Failed to record data.'); 92 } 93 } catch (error) { 94 console.error('Error recording data:', error); 95 } 96} 97
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.