modification du nom des cookies de consentement

This commit is contained in:
SylvainLelievre 2021-11-20 07:48:41 +01:00
parent 9485c2ba5a
commit 12bec0e14f
2 changed files with 62 additions and 57 deletions

View File

@ -222,27 +222,30 @@ core.start = function() {
/** /**
* Traitement du formulaire cookies * Traitement du formulaire cookies
*/ */
$("#cookieForm").submit(function(event){ $("#cookieForm").submit(function(event){
const ga = document.getElementById('googleAnalytics'); const ga = document.getElementById('googleAnalytics');
var samesite = "samesite=lax"; var samesite = "samesite=lax";
var expires = new Date(); var expires = new Date();
expires.setFullYear(expires.getFullYear() + 1); expires.setFullYear(expires.getFullYear() + 1);
expires = "expires=" + expires.toUTCString(); expires = "expires=" + expires.toUTCString();
// Crée le cookie d'acceptation Google Analytics si nécessaire // Crée le cookie d'acceptation Google Analytics si nécessaire
<?php $analytics = $this->getData(['config', 'seo', 'analyticsId']);?> <?php $analytics = $this->getData(['config', 'seo', 'analyticsId']);?>
<?php if( $analytics !== null AND $analytics !=='' ){ ?> <?php if( $analytics !== null AND $analytics !=='' ){
if(ga.checked){ $cookieName = 'ZWII_COOKIE_GA_CONSENT'.str_replace('_index.php','',str_replace( '/','_',$_SERVER['PHP_SELF']));?>
document.cookie = "ZWII_COOKIE_GA_CONSENT=true;" + expires +";"+ samesite; if(ga.checked){
} document.cookie = "<?php echo $cookieName; ?>=true;" + expires +";"+ samesite;
else{ }
document.cookie = "ZWII_COOKIE_GA_CONSENT=false;" + expires +";"+ samesite; else{
} document.cookie = "<?php echo $cookieName; ?>=false;" + expires +";"+ samesite;
<?php } ?> }
document.cookie = "ZWII_COOKIE_CONSENT=true;" + expires +";"+ samesite; <?php }
}); $cookieName = 'ZWII_COOKIE_CONSENT'.str_replace('_index.php','',str_replace( '/','_',$_SERVER['PHP_SELF']));
$(".cookieBox .cookieClose").on("click", function() { ?>
$(this).parents("#cookieConsent").fadeOut(); document.cookie = "<?php echo $cookieName; ?>=true;" + expires +";"+ samesite;
}); });
$(".cookieBox .cookieClose").on("click", function() {
$(this).parents("#cookieConsent").fadeOut();
});
/** /**
* Choix de page dans la barre de membre * Choix de page dans la barre de membre

View File

@ -1171,46 +1171,48 @@ class common {
/** /**
* Affiche le script Google Analytics * Affiche le script Google Analytics
*/ */
public function showAnalytics() { public function showAnalytics() {
if( !empty($code = $this->getData(['config', 'seo', 'analyticsId'])) && $cookieName = 'ZWII_COOKIE_GA_CONSENT'.str_replace('_index.php','',str_replace( '/','_',$_SERVER['PHP_SELF']));
$this->getInput('ZWII_COOKIE_GA_CONSENT') === 'true') { if( !empty($code = $this->getData(['config', 'seo', 'analyticsId'])) &&
echo '<!-- Global site tag (gtag.js) - Google Analytics --> $this->getInput($cookieName) === 'true') {
<script async src="https://www.googletagmanager.com/gtag/js?id='. $code .'"></script> echo '<!-- Global site tag (gtag.js) - Google Analytics -->
<script> <script async src="https://www.googletagmanager.com/gtag/js?id='. $code .'"></script>
window.dataLayer = window.dataLayer || []; <script>
function gtag(){dataLayer.push(arguments);} window.dataLayer = window.dataLayer || [];
gtag("js", new Date()); function gtag(){dataLayer.push(arguments);}
gtag("config","'. $code .'",{ "anonymize_ip": true }); gtag("js", new Date());
</script>'; gtag("config","'. $code .'",{ "anonymize_ip": true });
} </script>';
} }
}
/** /**
* Affiche le consentement aux cookies * Affiche le consentement aux cookies
*/ */
public function showCookies() { public function showCookies() {
if($this->getInput('ZWII_COOKIE_CONSENT') !== 'true' AND $this->getData(['config','cookieConsent']) === true){ ?> $cookieName = 'ZWII_COOKIE_CONSENT'.str_replace('_index.php','',str_replace( '/','_',$_SERVER['PHP_SELF']));
<div id="cookieConsent"> if($this->getInput($cookieName) !== 'true' AND $this->getData(['config','cookieConsent']) === true){ ?>
<div class="cookieBox"><div class="cookieClose">X</div></div> <div id="cookieConsent">
<?php $analytics = $this->getData(['config', 'seo', 'analyticsId']);?> <div class="cookieBox"><div class="cookieClose">X</div></div>
<p>Ce site <?php echo helper::baseUrl(false); ?> utilise des cookies nécessaires à son fonctionnement, <?php $analytics = $this->getData(['config', 'seo', 'analyticsId']);?>
ils permettent de fluidifier son fonctionnement par exemple en mémorisant les données de connexion, la langue que vous avez choisie <p>Ce site <?php echo helper::baseUrl(false); ?> utilise des cookies nécessaires à son fonctionnement,
ou la validation de ce message. ils permettent de fluidifier son fonctionnement par exemple en mémorisant les données de connexion, la langue que vous avez choisie
<?php $legalPage = $this->getData(['locale','legalPageId']) ==='none'? 'mentions-legales' : $this->getData(['locale','legalPageId']); ?> ou la validation de ce message.
<a href=" <?php echo helper::baseUrl() . $legalPage ?> ">Plus d'informations</a></p> <?php $legalPage = $this->getData(['locale','legalPageId']) ==='none'? 'mentions-legales' : $this->getData(['locale','legalPageId']); ?>
<?php if( $analytics !== null AND $analytics !=='' ){ ?> <a href=" <?php echo helper::baseUrl() . $legalPage ?> ">Plus d'informations</a></p>
<p>Il utilise également des cookies permettant de réaliser des statistiques de visites pour améliorer votre expérience utilisateur, ces cookies déposés par Google Analytics ont besoin de votre consentement.</p> <?php if( $analytics !== null AND $analytics !=='' ){ ?>
<?php } ?> <p>Il utilise également des cookies permettant de réaliser des statistiques de visites pour améliorer votre expérience utilisateur, ces cookies déposés par Google Analytics ont besoin de votre consentement.</p>
<form method="POST" action="" id="cookieForm"> <?php } ?>
<?php if( $analytics !== null AND $analytics !=='' ){ ?> <form method="POST" action="" id="cookieForm">
<input type="checkbox" id="googleAnalytics" name="googleAnalytics" value="GA"> <?php if( $analytics !== null AND $analytics !=='' ){ ?>
<label for="googleAnalytics"> J'accepte les cookies Google Analytics</label> <?php } ?><br><br> <input type="checkbox" id="googleAnalytics" name="googleAnalytics" value="GA">
<input type="submit" id="cookieConsentConfirm" value="Valider"> <label for="googleAnalytics"> J'accepte les cookies Google Analytics</label> <?php } ?><br><br>
</form> <input type="submit" id="cookieConsentConfirm" value="Valider">
</div> </form>
<?php </div>
} <?php
} }
}
/** /**
* Formate le contenu de la page selon les gabarits * Formate le contenu de la page selon les gabarits