From 947df175519a2f8e984837c42a74777c43b29e64 Mon Sep 17 00:00:00 2001 From: SylvainLelievre Date: Sat, 27 Nov 2021 08:47:00 +0100 Subject: [PATCH] Lien gestion des cookies dans le footer --- core/core.js.php | 15 +++++++++++++++ core/core.php | 6 ++++-- core/layout/common.css | 1 + core/module/config/config.php | 3 ++- core/module/config/view/connect/connect.php | 7 +++++++ core/module/install/ressource/defaultdata.php | 3 ++- 6 files changed, 31 insertions(+), 4 deletions(-) diff --git a/core/core.js.php b/core/core.js.php index 0e7b98ea..f0b9c3be 100644 --- a/core/core.js.php +++ b/core/core.js.php @@ -244,6 +244,21 @@ core.start = function() { document.cookie = "ZWII_COOKIE_CONSENT=;" + domain + ";" + path + ";" + samesite + ";" + expires; }); + /** + * Suppression du cookie de consentement + */ + $('#footerCookies').bind('click', function(event) { + var samesite = "samesite=lax"; + var getUrl = window.location; + var domain = "domain=" + getUrl.host; + var path = "path=" + getUrl.pathname.split('/')[1]; + var samesite = "samesite=lax"; + var e = new Date(); + e.setFullYear(e.getFullYear() - 1); + var expires = "expires=" + e.toUTCString(); + document.cookie = "ZWII_COOKIE_CONSENT=;" + domain + ";" + path + ";" + samesite + ";" + expires; + }); + /** * Fermeture de la popup des cookies */ diff --git a/core/core.php b/core/core.php index 487fde45..1d46d9b1 100644 --- a/core/core.php +++ b/core/core.php @@ -1480,6 +1480,8 @@ class common { $items .= ' | ' . $label .''; } $items .= ''; + // Affichage de la gestion des cookies + $items .= $this->getData(['config', 'cookies', 'cookieConsent' ]) === false ? '':' | '.$this->getData(['config', 'cookies', 'cookiesFooterText' ]).''; // Affichage du lien de connexion if( ( @@ -2269,7 +2271,7 @@ class core extends common { $css .= '.mce-tinymce {border: 1px solid ' . $this->getdata(['theme','block','borderColor']) .' !important;}'; // Bannière - + // Eléments communs if($this->getData(['theme', 'header', 'margin'])) { if($this->getData(['theme', 'menu', 'position']) === 'site-first') { @@ -2281,7 +2283,7 @@ class core extends common { } $colors = helper::colorVariants($this->getData(['theme', 'header', 'backgroundColor'])); $css .= 'header{background-color:' . $colors['normal'] . ';}'; - + // Bannière de type papier peint if ($this->getData(['theme','header','feature']) === 'wallpaper' ) { $css .= 'header{background-size:' . $this->getData(['theme','header','imageContainer']).'}'; diff --git a/core/layout/common.css b/core/layout/common.css index 36a1e377..292ba574 100755 --- a/core/layout/common.css +++ b/core/layout/common.css @@ -838,6 +838,7 @@ footer #footerbody>div { #footerDisplayVersion, #footerDisplaySiteMap, #footerDisplayLegal, +#footerCookies, #footerDisplaySearch, #footerZwiiCMS { font-size: inherit; diff --git a/core/module/config/config.php b/core/module/config/config.php index 3ef582d9..3b10fd07 100644 --- a/core/module/config/config.php +++ b/core/module/config/config.php @@ -509,7 +509,8 @@ class config extends common { 'cookiesGaText' => $this->getInput('connectCookiesGaText', helper::FILTER_STRING_LONG), 'cookiesTitleText' => $this->getInput('connectCookiesTitleText', helper::FILTER_STRING_SHORT), 'cookiesLinkMlText' => $this->getInput('connectCookiesLinkMlText', helper::FILTER_STRING_SHORT), - 'cookiesCheckboxGaText' => $this->getInput('connectCookiesCheckboxGaText', helper::FILTER_STRING_SHORT) + 'cookiesCheckboxGaText' => $this->getInput('connectCookiesCheckboxGaText', helper::FILTER_STRING_SHORT), + 'cookiesFooterText' => $this->getInput('connectCookiesFooterText', helper::FILTER_STRING_SHORT) ] ] ]); diff --git a/core/module/config/view/connect/connect.php b/core/module/config/view/connect/connect.php index b06db9cd..affb5312 100644 --- a/core/module/config/view/connect/connect.php +++ b/core/module/config/view/connect/connect.php @@ -131,6 +131,13 @@ 'help' => 'Activation obligatoire selon les lois françaises sauf si vous utilisez votre propre système de consentement.' ]); ?> +
+ 'Saisissez le texte du lien, présent dans le pied de page, qui permet au visiteur de modifier son consentement aux cookies.', + 'label' => 'Texte du lien dans le pied de page', + 'value' => $this->getData(['config', 'cookies', 'cookiesFooterText']) + ]); ?> +
diff --git a/core/module/install/ressource/defaultdata.php b/core/module/install/ressource/defaultdata.php index 3c7f7d0d..791695ec 100644 --- a/core/module/install/ressource/defaultdata.php +++ b/core/module/install/ressource/defaultdata.php @@ -58,7 +58,8 @@ class init extends common { 'cookiesGaText' => '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.', 'cookiesTitleText' => 'Gérer les cookies', 'cookiesLinkMlText' => 'Voir les mentions légales', - 'cookiesCheckboxGaText' => 'Autorisation des cookies Google Analytics' + 'cookiesCheckboxGaText' => 'Autorisation des cookies Google Analytics', + 'cookiesFooterText' => 'Gestion des cookies' ] ], 'core' => [