diff --git a/CHANGES.md b/CHANGES.md index 8d9271dd..dee6601a 100755 --- a/CHANGES.md +++ b/CHANGES.md @@ -9,7 +9,12 @@ Mises à jour : - Configuration, restauration d'une archive du site : - la validation du formulaire sans avoir sélectionné de fichier de sauvegarde provoque le crash du site. - la conversion des URL des ressources ne fonctionnait plus depuis l'externalisation du contenu des pages dans des fichiers séparés. + - Multi-langues : + - Bug auto détection du navigateur. - Modifications : + - Gestion des cookies : + - Options de personnalisation du message d'acceptation des cookies, acceptation ou refus du cookie Google Analytics, affichage de la page des mentions légales. + - Etiquette dans le footer permettant d'afficher la popup des cookies. - Thème : - Disposition des options de configuration du site. - Bannière : le contenu peut être personnalisé à l'aide d'un éditeur. La bannière au-dessus du site peut s'étendre sur la largeur de la page. diff --git a/core/core.js.php b/core/core.js.php index 0e7b98ea..c4815a35 100644 --- a/core/core.js.php +++ b/core/core.js.php @@ -206,18 +206,6 @@ core.start = function() { $("#notification").fadeOut(); $("#notificationProgress").stop(); }); - /** - * Affiche / Cache le menu en mode responsive - */ - var menuDOM = $("#menu"); - $("#toggle").on("click", function() { - menuDOM.slideToggle(); - }); - $(window).on("resize", function() { - if($(window).width() > 768) { - menuDOM.css("display", ""); - } - }); /** * Traitement du formulaire cookies @@ -236,20 +224,51 @@ core.start = function() { // Crée le cookie d'acceptation Google Analytics si l'ID a été saisie var analytics = "getData(['config', 'seo', 'analyticsId']);?>"; + // l'Id GA est défini dans la configuration, afficher la checkbox d'acceptation if( analytics.length > 0){ - document.cookie = "ZWII_COOKIE_GA_CONSENT=" + $("#googleAnalytics").prop("checked") + "" +";" + domain + ";" + path + ";" + samesite + ";" + expires; + // Traitement du retour de la checkbox + if ($("#googleAnalytics").is(":checked")) { + // L'URL du serveur faut TRUE + document.cookie = "ZWII_COOKIE_GA_CONSENT=" + "" + ";" + domain + ";" + path + ";" + samesite + ";" + expires; + } else { + document.cookie = "ZWII_COOKIE_GA_CONSENT=false;" + domain + ";" + path + ";" + samesite + ";" + expires; + } + } - // Stocke lz cookie d'acceptation + // Stocke le cookie d'acceptation document.cookie = "ZWII_COOKIE_CONSENT=;" + domain + ";" + path + ";" + samesite + ";" + expires; }); + /** * Fermeture de la popup des cookies */ $("#cookieConsent .cookieClose").on("click", function() { - $(this).parents("#cookieConsent").fadeOut(); + $('#cookieConsent').fadeOut(); }); + + /** + * Commande de gestion des cookies dans le footer + */ + + $("#footerLinkCookie").on("click", function() { + $("#cookieConsent").removeClass("displayNone"); + }); + + /** + * Affiche / Cache le menu en mode responsive + */ + var menuDOM = $("#menu"); + $("#toggle").on("click", function() { + menuDOM.slideToggle(); + }); + $(window).on("resize", function() { + if($(window).width() > 768) { + menuDOM.css("display", ""); + } + }); + /** * Choix de page dans la barre de membre */ diff --git a/core/core.php b/core/core.php index b5682eb9..2318ca5b 100644 --- a/core/core.php +++ b/core/core.php @@ -45,7 +45,7 @@ class common { // Numéro de version const ZWII_UPDATE_URL = 'https://forge.chapril.org/ZwiiCMS-Team/update/raw/branch/master/'; - const ZWII_VERSION = '11.2.00.9'; + const ZWII_VERSION = '11.2.00.12'; const ZWII_UPDATE_CHANNEL = "test"; public static $actions = []; @@ -264,7 +264,13 @@ class common { * la traduction est celle de la langue du drapeau * */ if ( $this->getInput('ZWII_I18N_SCRIPT') !== substr($_SERVER["HTTP_ACCEPT_LANGUAGE"],0,2 ) ) { - setrawcookie('googtrans', '/fr/'.substr( $_SERVER["HTTP_ACCEPT_LANGUAGE"],0,2 ), time() + 3600, helper::baseUrl()); + setrawcookie('googtrans', '/fr/'.substr( $_SERVER["HTTP_ACCEPT_LANGUAGE"],0,2 ), time() + 3600, helper::baseUrl(false, false)); + } else { + // Langue du drapeau si elle est définie + if ( $this->getInput('ZWII_I18N_SCRIPT') !== '' ) { + // Paramètre du script + setrawcookie("googtrans", '/fr/'. $this->getInput('ZWII_I18N_SCRIPT') , time() + 3600, helper::baseUrl(false,false)); + } } } @@ -1174,7 +1180,7 @@ class common { */ public function showAnalytics() { if( !empty($code = $this->getData(['config', 'seo', 'analyticsId'])) && - $this->getInput('ZWII_COOKIE_GA_CONSENT') === 'true'.$_SERVER['PHP_SELF']) { + $this->getInput('ZWII_COOKIE_GA_CONSENT') === $_SERVER['PHP_SELF'] ) { echo '