From f4e890f8e72d40f3dcdc7cffa10ff65386c56c8c Mon Sep 17 00:00:00 2001 From: Fred Tempez Date: Thu, 18 Jun 2020 13:16:34 +0200 Subject: [PATCH] 10.2.dev39 barre de membre simple dans footer --- core/core.php | 50 ++++++++++++++++-------- core/module/theme/theme.php | 6 ++- core/module/theme/view/footer/footer.php | 27 +++++++------ core/module/theme/view/menu/menu.js.php | 18 ++++----- core/module/theme/view/menu/menu.php | 39 ++++++++++-------- 5 files changed, 85 insertions(+), 55 deletions(-) diff --git a/core/core.php b/core/core.php index 19dbc5ec..c4d6e911 100755 --- a/core/core.php +++ b/core/core.php @@ -39,7 +39,7 @@ class common { const ACCESS_TIMER = 1800; // Numéro de version - const ZWII_VERSION = '10.2.00.dev38'; + const ZWII_VERSION = '10.2.00.dev39'; const ZWII_UPDATE_CHANNEL = "v10"; public static $actions = []; @@ -1314,19 +1314,23 @@ class common { } // Version 10.2.00 if ($this->getData(['core', 'dataVersion']) < 10200) { - $this->deleteData(['admin','colorButtonText']); - $this->setData(['config', 'connect', 'attempt',999]); - $this->setData(['config', 'connect', 'timeout',0]); - $this->setData(['config', 'connect', 'log',false]); - // Remettre à zéro le thème pour la génération du CSS du blog - if (file_exists(self::DATA_DIR . 'theme.css')) { - unlink(self::DATA_DIR . 'theme.css'); - } - // Créer les en-têtes du journal - $d = 'Date;Heure;Id;Action' . PHP_EOL; - file_put_contents(self::DATA_DIR . 'journal.log',$d); - // Init préservation htaccess - $this->setData(['config','autoUpdateHtaccess',false]); + $this->deleteData(['admin','colorButtonText']); + $this->setData(['config', 'connect', 'attempt',999]); + $this->setData(['config', 'connect', 'timeout',0]); + $this->setData(['config', 'connect', 'log',false]); + // Remettre à zéro le thème pour la génération du CSS du blog + if (file_exists(self::DATA_DIR . 'theme.css')) { + unlink(self::DATA_DIR . 'theme.css'); + } + // Créer les en-têtes du journal + $d = 'Date;Heure;Id;Action' . PHP_EOL; + file_put_contents(self::DATA_DIR . 'journal.log',$d); + // Init préservation htaccess + $this->setData(['config','autoUpdateHtaccess',false]); + // Options de barre de membre simple + $this->setData(['theme','menu','memberBar',true]); + $this->setData(['theme','footer','displayMemberAccount',false]); + $this->setData(['theme','footer','displayMemberLogout',false]); $this->setData(['core', 'dataVersion', 10200]); } } @@ -2121,6 +2125,18 @@ class layout extends common { strip_tags(str_replace('/', '_', $this->getUrl())) . '" data-tippy-content="Connexion à l\'administration" rel="nofollow">Connexion'; } + // Affichage de la barre de membre simple + if ( $this->getUser('group') === self::GROUP_MEMBER + && ( $this->getData(['theme','footer','displayMemberBar']) === true + || $this->getData(['theme','menu','memberBar']) === false + ) + ) { + $items .= 'getData(['theme','footer','displaymemberAccount']) === false ? ' class="displayNone"' : ''; + $items .= '> |' . template::ico('user', 'all') . ''; + $items .= '' . template::ico('logout','left') . ''; + $items .= ''; + } // Fermeture du bloc copyright $items .= ''; echo $items; @@ -2331,8 +2347,10 @@ class layout extends common { '">Connexion'; } // Commandes pour les membres simples - if($this->getUser('group') == self::GROUP_MEMBER) { - $items .= '
  • ' . template::ico('user', 'right') . '
  • '; + if($this->getUser('group') == self::GROUP_MEMBER + && $this->getData(['theme','menu','memberBar']) === true + ) { + $items .= '
  • ' . template::ico('user', 'right') . '
  • '; $items .= '
  • ' . template::ico('logout') . '
  • '; } // Retourne les items du menu diff --git a/core/module/theme/theme.php b/core/module/theme/theme.php index 389f5d99..498960e5 100755 --- a/core/module/theme/theme.php +++ b/core/module/theme/theme.php @@ -375,7 +375,8 @@ class theme extends common { 'displaySiteMap' => $this->getInput('themefooterDisplaySiteMap', helper::FILTER_BOOLEAN), 'displayCopyright' => $this->getInput('themefooterDisplayCopyright', helper::FILTER_BOOLEAN), 'displayLegal' => $this->getInput('themeFooterDisplayLegal', helper::FILTER_BOOLEAN), - 'displaySearch' => $this->getInput('themeFooterDisplaySearch', helper::FILTER_BOOLEAN), + 'displaySearch' => $this->getInput('themeFooterDisplaySearch', helper::FILTER_BOOLEAN), + 'displayMemberBar'=> $this->getInput('themeFooterDisplayMemberBar', helper::FILTER_BOOLEAN), 'template' => $this->getInput('themeFooterTemplate') ]]); // Valeurs en sortie @@ -504,7 +505,8 @@ class theme extends common { 'activeColor' => $this->getInput('themeMenuActiveColor'), 'activeTextColor' => $this->getInput('themeMenuActiveTextColor'), 'radius' => $this->getInput('themeMenuRadius'), - 'burgerTitle' => $this->getInput('themeMenuBurgerTitle', helper::FILTER_BOOLEAN) + 'burgerTitle' => $this->getInput('themeMenuBurgerTitle', helper::FILTER_BOOLEAN), + 'memberBar' => $this->getInput('themeMenuMemberBar', helper::FILTER_BOOLEAN) ]]); // Valeurs en sortie $this->addOutput([ diff --git a/core/module/theme/view/footer/footer.php b/core/module/theme/view/footer/footer.php index 47347007..b09fee98 100755 --- a/core/module/theme/view/footer/footer.php +++ b/core/module/theme/view/footer/footer.php @@ -57,6 +57,12 @@ 'help' => (bool) empty($this->getData(['config', 'legalPageId'])) ? 'Pour activer cette option, sélectionnez la page contenant les mentions légales dans la gestion du site' : '' ]); ?> +
    + $this->getData(['theme', 'footer', 'displayMemberBar']), + 'help' => 'Affiche les icônes de gestion du compte et de déconnexion. Uniquement pour les membres simples une fois connectés.' + ]); ?> +
    @@ -65,19 +71,16 @@ 'help' => 'Un plan du site permet un meilleur référencement.' ]); ?>
    +
    + $this->getData(['theme', 'footer', 'displaySearch']) + ]); ?> +
    $this->getData(['theme', 'footer', 'loginLink']) ]); ?>
    -
    - $this->getData(['theme', 'footer', 'displaySearch']), - ]); ?> -
    -
    -
    - Le paramétrage des mentions légales s'effectue dans la configuration du site.
    @@ -110,7 +113,7 @@
    'Taille', - 'help' => 'Proportionnelle à celle définie dans le site.', + 'help' => 'Proportionnelle à celle définie dans le site.', 'selected' => $this->getData(['theme', 'footer', 'fontSize']) ]); ?>
    @@ -136,7 +139,7 @@

    Configuration

    - + getData(['theme', 'footer', 'template'])) ? $module::$footerblocks[3] : $module::$footerblocks [$this->getData(['theme', 'footer', 'template'])] ;?> 'Disposition', @@ -199,13 +202,13 @@ 'checked' => $this->getData(['theme', 'footer', 'margin']) ]); ?>
    -
    +
    $this->getData(['theme', 'footer', 'fixed']) ]); ?> -
    +
    diff --git a/core/module/theme/view/menu/menu.js.php b/core/module/theme/view/menu/menu.js.php index ee7e843e..8e222c6d 100755 --- a/core/module/theme/view/menu/menu.js.php +++ b/core/module/theme/view/menu/menu.js.php @@ -13,7 +13,7 @@ $(document).ready(function(){ // Menu fixe à afficher if($("#themeMenuPosition").val() === 'top') { - $("#themeMenuPositionFixed").slideDown(); + $("#themeMenuPositionFixed").slideDown(); } else { $("#themeMenuPositionFixed").slideUp(function() { @@ -23,7 +23,7 @@ $(document).ready(function(){ // Option de menu à afficher if($("#themeMenuPosition").val() === 'site-first' || $(this).val() === 'site-second') { - $("#themeMenuPositionOptions").slideDown(); + $("#themeMenuPositionOptions").slideDown(); } else { $("#themeMenuPositionOptions").slideUp(function() { @@ -42,7 +42,7 @@ $("input, select").on("change", function() { var menuFont = $("#themeMenuFont").val(); var css = "@import url('https://fonts.googleapis.com/css?family=" + menuFont + "');"; var colors = core.colorVariants($("#themeMenuBackgroundColor").val()); - // Couleurs du menu + // Couleurs du menu css += "nav,nav a{background-color:" + colors.normal + "}"; css += "nav a,#toggle span,nav a:hover{color:" + $("#themeMenuTextColor").val() + "}"; css += "nav a:hover{background-color:" + colors.darken + "}"; @@ -50,7 +50,7 @@ $("input, select").on("change", function() { css += "nav a:hover{background-color:" + colors.veryDarken + ";color:" + $('#themeMenuActiveTextColor').val() + ";}"; } else { css += "nav a:hover{background-color:" + $("#themeMenuActiveColor").val() + ";color:" + $('#themeMenuActiveTextColor').val() + ";}"; - } + } // Taille, hauteur, épaisseur et capitalisation de caractères du menu css += "#toggle span,#menu a{padding:" + $("#themeMenuHeight").val() + ";font-family:'" + menuFont.replace(/\+/g, " ") + "',sans-serif;font-weight:" + $("#themeMenuFontWeight").val() + ";font-size:" + $("#themeMenuFontSize").val() + ";text-transform:" + $("#themeMenuTextTransform").val() + "}"; // Alignement du menu @@ -105,7 +105,7 @@ $("input, select").on("change", function() { $("#menu").removeClass('container-large'); $("nav").removeAttr('id'); $("#menu").addClass('container'); - break; + break; case 'body-second': if(getData(['theme', 'header', 'position']) === 'body'); ?>) { $("nav").show().insertAfter("header"); @@ -123,7 +123,7 @@ $("input, select").on("change", function() { break; case 'site': $("nav").show().prependTo("#site"); - break; + break; } }); // @@ -140,7 +140,7 @@ $("#themeMenuLoginLink").on("change", function() { // Affiche / Cache les options de la position $("#themeMenuPosition").on("change", function() { if($(this).val() === 'site-first' || $(this).val() === 'site-second') { - $("#themeMenuPositionOptions").slideDown(); + $("#themeMenuPositionOptions").slideDown(); } else { $("#themeMenuPositionOptions").slideUp(function() { @@ -152,7 +152,7 @@ $("#themeMenuPosition").on("change", function() { // Affiche / Cache les options du menu fixe $("#themeMenuPosition").on("change", function() { if($(this).val() === 'top') { - $("#themeMenuPositionFixed").slideDown(); + $("#themeMenuPositionFixed").slideDown(); } else { $("#themeMenuPositionFixed").slideUp(function() { @@ -165,7 +165,7 @@ $("#themeMenuPosition").on("change", function() { $("#themeMenuActiveColorAuto").on("change", function() { if ($(this).is(':checked') ) { $("#themeMenuActiveColorWrapper").slideUp(); - } else { + } else { $("#themeMenuActiveColorWrapper").slideDown(); } }).trigger("change"); \ No newline at end of file diff --git a/core/module/theme/view/menu/menu.php b/core/module/theme/view/menu/menu.php index 150c06a1..d8fac7af 100755 --- a/core/module/theme/view/menu/menu.php +++ b/core/module/theme/view/menu/menu.php @@ -20,19 +20,19 @@
    'colorPicker', - 'help' => 'Le curseur horizontal règle le niveau de transparence.', + 'help' => 'Le curseur horizontal règle le niveau de transparence.', 'label' => 'Texte', 'value' => $this->getData(['theme', 'menu', 'textColor']) ]); ?> -
    +
    'colorPicker', - 'help' => 'Le curseur horizontal règle le niveau de transparence.', + 'help' => 'Le curseur horizontal règle le niveau de transparence.', 'label' => 'Fond', 'value' => $this->getData(['theme', 'menu', 'backgroundColor']) ]); ?> -
    + @@ -40,31 +40,31 @@
    -

    Page active

    -
    +

    Page active

    +
    'colorPicker', - 'help' => 'Le curseur horizontal règle le niveau de transparence.', + 'help' => 'Le curseur horizontal règle le niveau de transparence.', 'label' => 'Texte', 'value' => $this->getData(['theme', 'menu', 'activeTextColor']) ]); ?> -
    +
    $this->getData(['theme', 'menu', 'activeColorAuto']), 'help' => 'La couleur de fond de la page active peut être définie automatique ou selon une couleur définie, comme par exemple celle de fond des pages.' ]); ?> -
    +
    'colorPicker', - 'help' => 'Couleur de fond de la page sélectionnée dans le menu.
    Le curseur horizontal règle le niveau de transparence.', + 'help' => 'Couleur de fond de la page sélectionnée dans le menu.
    Le curseur horizontal règle le niveau de transparence.', 'label' => 'Fond', 'value' => $this->getData(['theme', 'menu', 'activeColor']) ]); ?> -
    +
    @@ -84,7 +84,7 @@
    'Taille', - 'help' => 'Proportionnelle à celle définie dans le site', + 'help' => 'Proportionnelle à celle définie dans le site', 'selected' => $this->getData(['theme', 'menu', 'fontSize']) ]); ?>
    @@ -168,18 +168,25 @@

    Contenus

    -
    +
    $this->getData(['theme', 'menu', 'loginLink']) + 'checked' => $this->getData(['theme', 'menu', 'loginLink']), + 'help' => 'L\'activation de cette option n\'est pas recommandée' ]); ?>
    -
    +
    + $this->getData(['theme', 'menu', 'memberBar']), + 'help' => 'Icônes de gestion de compte et de déconnexion. Uniquement pour les membres connectés' + ]); ?> +
    +
    $this->getData(['theme', 'menu', 'burgerTitle']), 'help' => 'Le menu burger remplace le menu complet lorsque la largeur de l\'écran n\'est pas suffisante.' ]); ?>
    -
    +