drapeau plutot que du texte

This commit is contained in:
Fred Tempez 2021-10-02 14:15:27 +02:00
parent 9e4010a4d5
commit ca067121f9
4 changed files with 66 additions and 17 deletions

View File

@ -423,6 +423,23 @@ class template {
return '<span class="zwiico-' . $ico . ($margin ? ' zwiico-margin-' . $margin : '') . ($animate ? ' animate-spin' : '') . '" style="font-size:' . $fontSize . '"><!----></span>';
}
/**
* Crée un drapeau du site courante
* @param string $margin Ajoute un margin autour de l'icône (choix : left, right, all)
* @param string $size Taille en pixels (default = auto)
* @return string
*/
public static function flag( $size = 'auto') {
if ( isset($_COOKIE['ZWII_I18N_SITE'])
) {
$lang = $_COOKIE['ZWII_I18N_SITE'];
return '<img class="flag" src="' . helper::baseUrl(false) . 'core/vendor/i18n/png/' . $lang . '.png"
width="' . $size .'"
height="' . $size .'"
alt="(' . $lang . ')"/>';
}
}
/**
* Crée un label
* @param string $for For du label

View File

@ -1,9 +1,3 @@
<?php
$i18nSite = 'fr';
if ( isset($_COOKIE['ZWII_I18N_SITE']) ) {
$i18nSite = $_COOKIE['ZWII_I18N_SITE'];
}
?>
<?php echo template::formOpen('configForm');?>
<div class="row">
<div class="col2">
@ -58,7 +52,7 @@ if ( isset($_COOKIE['ZWII_I18N_SITE']) ) {
<div class="row">
<div class="col9">
<?php echo template::text('configTitle', [
'label' => 'Titre du site '. $i18nSite,
'label' => 'Titre du site '. template::flag('20px') ,
'value' => $this->getData(['locale', 'title']),
'help' => 'Il apparaît dans la barre de titre et les partages sur les réseaux sociaux.'
]); ?>
@ -74,7 +68,7 @@ if ( isset($_COOKIE['ZWII_I18N_SITE']) ) {
<div class="row">
<div class="col12">
<?php echo template::textarea('configMetaDescription', [
'label' => 'Description du site ' . $i18nSite,
'label' => 'Description du site ' . template::flag('20px'),
'value' => $this->getData(['locale', 'metaDescription']),
'help' => 'La description d\'une page participe à son référencement, chaque page doit disposer d\'une description différente.'
]); ?>
@ -164,21 +158,21 @@ if ( isset($_COOKIE['ZWII_I18N_SITE']) ) {
<div class="row">
<div class="col4">
<?php echo template::text('configLegalPageLabel', [
'label' => 'Mentions légales ' . $i18nSite,
'label' => 'Mentions légales ' . template::flag('20px'),
'placeholder' => 'Mentions légales',
'value' => $this->getData(['locale', 'legalPageLabel']),
]); ?>
</div>
<div class="col4">
<?php echo template::text('configSearchPageLabel', [
'label' => 'Rechercher ' . $i18nSite,
'label' => 'Rechercher ' . template::flag('20px'),
'placeholder' => 'Rechercher',
'value' => $this->getData(['locale', 'searchPageLabel']),
]); ?>
</div>
<div class="col4">
<?php echo template::text('configSitemapPageLabel', [
'label' => 'Plan du site ' . $i18nSite,
'label' => 'Plan du site ' . template::flag('20px'),
'placeholder' => 'Plan du site',
'value' => $this->getData(['locale', 'sitemapPageLabel']),
]); ?>

View File

@ -380,6 +380,11 @@ class theme extends common {
'displayMemberBar'=> $this->getInput('themeFooterDisplayMemberBar', helper::FILTER_BOOLEAN),
'template' => $this->getInput('themeFooterTemplate')
]]);
// Sauvegarder la configuration localisée
$this->setData(['locale','legalPageId', $this->getInput('configLegalPageId')]);
$this->setData(['locale','searchPageId', $this->getInput('configSearchPageId')]);
// Valeurs en sortie
$this->addOutput([
'notification' => 'Modifications enregistrées',

View File

@ -79,24 +79,57 @@
<div class="col5">
<div class="block">
<h4>Pages spéciales</h4>
<?php
$pages = $this->getData(['page']);
foreach($pages as $page => $pageId) {
if ($this->getData(['page',$page,'block']) === 'bar' ||
$this->getData(['page',$page,'disable']) === true) {
unset($pages[$page]);
}
}
$orphans = $this->getData(['page']);
foreach($orphans as $page => $pageId) {
if ($this->getData(['page',$page,'block']) === 'bar' ||
$this->getData(['page',$page,'disable']) === true ||
$this->getdata(['page',$page, 'position']) !== 0) {
unset($orphans[$page]);
}
}
?>
<div class="row">
<div class="col12">
<div class="col6">
<?php echo template::checkbox('themeFooterDisplayLegal', true, 'Mentions légales', [
'checked' => $this->getData(['locale', 'legalPageId']) === 'none' ? false : $this->getData(['theme', 'footer', 'displayLegal']),
'disabled' => $this->getData(['locale', 'legalPageId']) === 'none' ? true : false,
'help' => $this->getData(['locale', 'legalPageId']) === 'none' ? 'Une page contenant les mentions légales n\'est pas définie dans la configuration du site / pages spéciales.' : ''
]); ?>
</div>
</div>
<div class="row">
<div class="col12">
<?php echo template::checkbox('themeFooterDisplaySearch', true, 'Rechercher dans le site', [
<div class="col6">
<?php echo template::checkbox('themeFooterDisplaySearch', true, 'Rechercher', [
'checked' => $this->getData(['locale', 'searchPageId']) === 'none' ? false : $this->getData(['theme', 'footer', 'displaySearch']),
'disabled' => $this->getData(['locale', 'searchPageId']) === 'none' ? true : false,
'help' => $this->getData(['locale', 'searchPageId']) === 'none' ? 'Une page contenant un module de recherche n\'est pas définie dans la configuration du site / pages spéciales.' : ''
]); ?>
</div>
</div>
<div class="row">
<div class="col6">
<?php echo template::select('configLegalPageId', array_merge(['none' => 'Aucune'] , helper::arrayCollumn($pages, 'title', 'SORT_ASC') ) , [
'label' => 'Page Mentions légales ' . template::flag('20px'),
'selected' => $this->getData(['locale', 'legalPageId']),
'help' => 'Options identique à la configuration du site',
'disabled' => true
]); ?>
</div>
<div class="col6">
<?php echo template::select('configSearchPageId', array_merge(['none' => 'Aucune'] , helper::arrayCollumn($pages, 'title', 'SORT_ASC') ) , [
'label' => 'Page Rechercher ' . template::flag('20px'),
'selected' => $this->getData(['locale', 'searchPageId']),
'help' => 'Options identique à la configuration du site',
'disabled' => true
]); ?>
</div>
</div>
</div>
</div>
</div>