Skip to content

Instantly share code, notes, and snippets.

@slim16165
Forked from AertHulsebos/consentmodelog.js
Last active September 11, 2024 22:29
Show Gist options
  • Save slim16165/847bac8319d1dc88058768c81c3cf0d9 to your computer and use it in GitHub Desktop.
Save slim16165/847bac8319d1dc88058768c81c3cf0d9 to your computer and use it in GitHub Desktop.
(() => {
// Funzioni di utilità
const convertConsentStatus = (status) => {
if (status === undefined) return '';
return status ? 'granted' : 'denied';
};
const getStatusColor = (status) => {
return status === 'granted' ? 'color: #29b6f6' : 'color: #C00';
};
// Funzione principale
const analyzeConsentMode = () => {
console.log('Iniziando l\'analisi del Consent Mode...');
// Verifica la presenza di google_tag_data
if (typeof window.google_tag_data === 'undefined') {
console.error('google_tag_data non trovato. Google Tag Manager potrebbe non essere caricato.');
return;
}
console.log('google_tag_data trovato. Procedendo con l\'analisi...');
// Verifica la presenza di ics e entries
const entries = window.google_tag_data.ics?.entries;
if (!entries) {
console.error('Dati del Consent Mode non trovati in google_tag_data.ics.entries.');
return;
}
console.log('Dati del Consent Mode trovati. Analizzando le entries...');
let hasEntries = false;
// Analizza ogni entry
for (const [key, value] of Object.entries(entries)) {
const initialStatus = convertConsentStatus(value.initial);
const updatedStatus = convertConsentStatus(value.update);
if (initialStatus === '' && updatedStatus === '') continue;
hasEntries = true;
console.group(`Consenso per: ${key}`);
if (initialStatus) {
console.log(`Stato iniziale: %c${initialStatus}`, getStatusColor(initialStatus));
}
if (updatedStatus) {
console.log(`Stato aggiornato: %c${updatedStatus}`, getStatusColor(updatedStatus));
}
console.groupEnd();
}
if (!hasEntries) {
console.warn('Nessuna entry di consenso trovata. Il Consent Mode potrebbe non essere configurato correttamente.');
} else {
console.log('Analisi del Consent Mode completata.');
}
};
// Esegui l'analisi
analyzeConsentMode();
})();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment