12100 Sélecteur de langue du site dans la barre d'administration
This commit is contained in:
parent
1c16e14bac
commit
45c918e2ee
@ -5,6 +5,7 @@
|
||||
- Corrige une erreur fatale avec un argument float au lieu d'int dans mt_srand.
|
||||
### Améliorations :
|
||||
- Changement du nom de formulaire de gestion des langues (multilangue devient multilingue).
|
||||
- Présence d'un sélecteur de langue de contenu dans la barre d'administration.
|
||||
- Traductions de l'interface d'administration, ajout de nouvelles fonctionnalités :
|
||||
- Installation et mise à jour d'une langue depuis un magasin en ligne ;
|
||||
- Téléchargement d'une langue modifiée avec l'éditeur intégré ;
|
||||
|
@ -252,6 +252,16 @@ core.start = function() {
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* Sélection d'une langue du site
|
||||
*/
|
||||
$("#barSelectLanguage").on("change", function() {
|
||||
var lang = $(this).val();
|
||||
console.log (lang);
|
||||
if(lang) {
|
||||
$(location).attr("href", lang);
|
||||
}
|
||||
});
|
||||
/**
|
||||
* Choix de page dans la barre de membre
|
||||
*/
|
||||
@ -261,6 +271,7 @@ core.start = function() {
|
||||
$(location).attr("href", pageUrl);
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* Champs d'upload de fichiers
|
||||
*/
|
||||
|
@ -318,7 +318,6 @@ class common
|
||||
self::$i18nContent = 'fr_FR';
|
||||
\setlocale(LC_TIME, self::$i18nContent . '.UTF8');
|
||||
}
|
||||
|
||||
/**
|
||||
* Mise à jour à partir de la version 11.5.12
|
||||
* */
|
||||
@ -1798,7 +1797,7 @@ class common
|
||||
$t[] = $this->showi18n($key);
|
||||
}
|
||||
}
|
||||
// Pas de drapeau si la langu eest unique
|
||||
// Pas de drapeau si la langue est unique
|
||||
if (count($t) > 1) {
|
||||
foreach ($t as $key) {
|
||||
echo $key;
|
||||
@ -2135,9 +2134,28 @@ class common
|
||||
if ($this->getUser('password') === $this->getInput('ZWII_USER_PASSWORD')) {
|
||||
// Items de gauche
|
||||
$leftItems = '';
|
||||
// Sélecteur de langues
|
||||
if ($this->getUser('group') >= self::GROUP_MODERATOR) {
|
||||
$c = 0;
|
||||
$leftItem = '';
|
||||
foreach (self::$languages as $key => $value) {
|
||||
if (is_dir(self::DATA_DIR . $key)) {
|
||||
$c++;
|
||||
$location = helper::baseUrl() . 'translate/content/' . $key ;
|
||||
$leftItem .= '<option value="' . $location . '" ' . ($key === self::$i18nContent ? 'selected' : '') . '>' . $value . '</option>';
|
||||
}
|
||||
}
|
||||
if ($c > 1 ) {
|
||||
$leftItems .= '<li><select id="barSelectLanguage">';
|
||||
$leftItems .= $leftItem;
|
||||
$leftItems .= '</select></li>';
|
||||
}
|
||||
|
||||
}
|
||||
// Liste des pages
|
||||
if ($this->getUser('group') >= self::GROUP_MODERATOR) {
|
||||
$leftItems .= '<li><select id="barSelectPage">';
|
||||
$leftItems .= '<option value="">Choisissez une page</option>';
|
||||
$leftItems .= '<option value="">Pages du site</option>';
|
||||
$leftItems .= '<optgroup label="Pages orphelines">';
|
||||
$orpheline = true;
|
||||
$currentPageId = $this->getData(['page', $this->getUrl(0)]) ? $this->getUrl(0) : $this->getUrl(2);
|
||||
@ -2241,7 +2259,7 @@ class common
|
||||
'href' => helper::baseUrl() . 'plugin'
|
||||
]) . '</li>';
|
||||
$rightItems .= '<li>' . template::ico('flag', [
|
||||
'help' => 'Contenu Multilingues',
|
||||
'help' => 'Multilingue',
|
||||
'href' => helper::baseUrl() . 'translate'
|
||||
]) . '</li>';
|
||||
$rightItems .= '<li>' . template::ico('cog-alt', [
|
||||
@ -2809,7 +2827,7 @@ class core extends common
|
||||
$css .= '.button.buttonGreen, button[type=submit] {background-color: ' . $colors['normal'] . ';color: ' . $colors['text'] . ';}.button.buttonGreen:hover, button[type=submit]:hover {background-color: ' . $colors['darken'] . ';color: ' . $colors['text'] . ';}.button.buttonGreen:active, button[type=submit]:active {background-color: ' . $colors['darken'] . ';color: ' . $colors['text'] . ';}';
|
||||
$colors = helper::colorVariants($this->getData(['admin', 'backgroundBlockColor']));
|
||||
$css .= '.buttonTab, .block {border: 1px solid ' . $this->getData(['admin', 'borderBlockColor']) . ';}.buttonTab, .block h4 {background-color: ' . $colors['normal'] . ';color:' . $colors['text'] . ';}';
|
||||
$css .= 'table tr,input[type=email],input[type=text],input[type=password],select:not(#barSelectPage),textarea:not(.editorWysiwyg), textarea:not(.editorWysiwygComment),.inputFile{background-color: ' . $colors['normal'] . ';color:' . $colors['text'] . ';border: 1px solid ' . $this->getData(['admin', 'borderBlockColor']) . ';}';
|
||||
$css .= 'table tr,input[type=email],input[type=text],input[type=password],select:not(#barSelectLanguage),select:not(#barSelectPage),textarea:not(.editorWysiwyg), textarea:not(.editorWysiwygComment),.inputFile{background-color: ' . $colors['normal'] . ';color:' . $colors['text'] . ';border: 1px solid ' . $this->getData(['admin', 'borderBlockColor']) . ';}';
|
||||
// Bordure du contour TinyMCE
|
||||
$css .= '.mce-tinymce{border: 1px solid ' . $this->getData(['admin', 'borderBlockColor']) . '!important;}';
|
||||
// Enregistre la personnalisation
|
||||
|
@ -411,14 +411,16 @@ td>.col12 {
|
||||
}
|
||||
|
||||
#bar select {
|
||||
width: 250px;
|
||||
width: 150px;
|
||||
border: 0;
|
||||
color: #111112;
|
||||
font-size: 12px;
|
||||
background-color: rgba(255, 255, 255, 1);
|
||||
padding : 8px;
|
||||
margin-left: 5px;
|
||||
}
|
||||
|
||||
@media screen and (min-width: 769px) {
|
||||
@media screen and (min-width: 800px) {
|
||||
#bar #barLeft {
|
||||
float: left;
|
||||
}
|
||||
@ -429,7 +431,7 @@ td>.col12 {
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (max-width: 768px) {
|
||||
@media screen and (max-width: 799px) {
|
||||
#bar {
|
||||
text-align: center;
|
||||
padding: 0 1;
|
||||
@ -440,11 +442,13 @@ td>.col12 {
|
||||
height: auto;
|
||||
}
|
||||
|
||||
#bar #barSelectPage {
|
||||
width: 40%;
|
||||
font-size: 1em;
|
||||
#bar select {
|
||||
font-size: 1.3em;
|
||||
width: 100%;
|
||||
margin: 10px;
|
||||
}
|
||||
|
||||
|
||||
#bar #barLeft {
|
||||
font-size: 1.2em;
|
||||
float: none;
|
||||
@ -469,7 +473,7 @@ td>.col12 {
|
||||
#site {
|
||||
margin: 20px auto;
|
||||
}
|
||||
}
|
||||
}#barSelectPage
|
||||
*/
|
||||
|
||||
/* Bannière */
|
||||
@ -502,7 +506,7 @@ header .container {
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
/* Marges au cotenu de la bannière personnalisée
|
||||
/* Marges au contenu de la bannière personnalisée
|
||||
header:not(.container) #featureContent {
|
||||
margin: 0 10px;
|
||||
}*/
|
||||
|
@ -9,4 +9,4 @@
|
||||
* @license CC Attribution-NonCommercial-NoDerivatives 4.0 International
|
||||
* @link http://zwiicms.fr/
|
||||
*/
|
||||
$("input, select").on("change",(function(){var titleFont=$("#adminFontTitle").val(),textFont=$("#adminFontText").val(),css="@import url('https://fonts.cdnfonts.com/css/"+titleFont+"');",css="@import url('https://fonts.cdnfonts.com/css/"+textFont+"');",colors,css="#site{background-color:"+(colors=core.colorVariants($("#adminBackgroundColor").val())).normal+";}",colors,colors,colors,colors;css+="body, .row > div {font:"+$("#adminFontTextSize").val()+" '"+textFont+"', sans-serif;}",css+="body h1, h2, h3, h4, h5, h6 {font-family:'"+titleFont+"', sans-serif; color:"+$("#adminColorTitle").val()+";}",css+="body:not(.editorWysiwyg),span .zwiico-help {color:"+$("#adminColorText").val()+";}",css+="input[type='checkbox']:checked + label::before,.speechBubble{ background-color:"+(colors=core.colorVariants($("#adminColorButton").val())).normal+"; color:"+$("#adminColorButtonText").val()+";}",css+=".speechBubble::before {border-color:"+colors.normal+" transparent transparent transparent;}",css+=".button {background-color:"+colors.normal+";color:"+colors.text+";}.button:hover {background-color:"+colors.darken+";color:"+colors.text+";}.button:active {background-color:"+colors.veryDarken+";color:"+colors.text+";}",css+=".button.buttonGrey {background-color: "+(colors=core.colorVariants($("#adminColorGrey").val())).normal+";color:"+colors.text+";}.button.buttonGrey:hover {background-color:"+colors.darken+";color:"+colors.text+"}.button.buttonGrey:active {background-color:"+colors.veryDarken+";color:"+colors.text+";}",css+=".button.buttonRed {background-color: "+(colors=core.colorVariants($("#adminColorRed").val())).normal+";color:"+colors.text+";}.button.buttonRed:hover {background-color:"+colors.darken+";color:"+colors.text+"}.button.buttonRed:active {background-color:"+colors.veryDarken+";color:"+colors.text+"}",css+=".button.buttonGreen, button[type=submit] {background-color: "+(colors=core.colorVariants($("#adminColorGreen").val())).normal+";color: ;color:"+colors.text+"}.button.buttonGreen:hover, button[type=submit]:hover {background-color: "+colors.darken+";color:"+colors.text+";}.button.buttonGreen:active, button[type=submit]:active {background-color:"+colors.veryDarken+";color:"+colors.text+"}";var colors=core.colorVariants($("#adminBackGroundBlockColor").val());css+=".block {border: 1px solid "+$("#adminBorderBlockColor").val()+";}.block h4 {background-color: "+colors.normal+";color:"+colors.text+";}",css+="input[type=email],input[type=text],input[type=password],select:not(#barSelectPage),textarea:not(.editorWysiwyg),.inputFile{background-color: "+colors.normal+";color:"+colors.text+";border: 1px solid "+$("#adminBorderBlockColor").val()+";}",$("#themePreview").remove(),$("<style>").attr("type","text/css").attr("id","themePreview").text(css).appendTo("head")})),$("#configAdminReset").on("click",(function(){var _this=$(this);return core.confirm("Êtes-vous sûr de vouloir réinitialiser à son état d'origine le thème de l'administration ?",(function(){$(location).attr("href",_this.attr("href"))}))}));
|
||||
$("input, select").on("change",(function(){var titleFont=$("#adminFontTitle").val(),textFont=$("#adminFontText").val(),css="@import url('https://fonts.cdnfonts.com/css/"+titleFont+"');",css="@import url('https://fonts.cdnfonts.com/css/"+textFont+"');",colors,css="#site{background-color:"+(colors=core.colorVariants($("#adminBackgroundColor").val())).normal+";}",colors,colors,colors,colors;css+="body, .row > div {font:"+$("#adminFontTextSize").val()+" '"+textFont+"', sans-serif;}",css+="body h1, h2, h3, h4, h5, h6 {font-family:'"+titleFont+"', sans-serif; color:"+$("#adminColorTitle").val()+";}",css+="body:not(.editorWysiwyg),span .zwiico-help {color:"+$("#adminColorText").val()+";}",css+="input[type='checkbox']:checked + label::before,.speechBubble{ background-color:"+(colors=core.colorVariants($("#adminColorButton").val())).normal+"; color:"+$("#adminColorButtonText").val()+";}",css+=".speechBubble::before {border-color:"+colors.normal+" transparent transparent transparent;}",css+=".button {background-color:"+colors.normal+";color:"+colors.text+";}.button:hover {background-color:"+colors.darken+";color:"+colors.text+";}.button:active {background-color:"+colors.veryDarken+";color:"+colors.text+";}",css+=".button.buttonGrey {background-color: "+(colors=core.colorVariants($("#adminColorGrey").val())).normal+";color:"+colors.text+";}.button.buttonGrey:hover {background-color:"+colors.darken+";color:"+colors.text+"}.button.buttonGrey:active {background-color:"+colors.veryDarken+";color:"+colors.text+";}",css+=".button.buttonRed {background-color: "+(colors=core.colorVariants($("#adminColorRed").val())).normal+";color:"+colors.text+";}.button.buttonRed:hover {background-color:"+colors.darken+";color:"+colors.text+"}.button.buttonRed:active {background-color:"+colors.veryDarken+";color:"+colors.text+"}",css+=".button.buttonGreen, button[type=submit] {background-color: "+(colors=core.colorVariants($("#adminColorGreen").val())).normal+";color: ;color:"+colors.text+"}.button.buttonGreen:hover, button[type=submit]:hover {background-color: "+colors.darken+";color:"+colors.text+";}.button.buttonGreen:active, button[type=submit]:active {background-color:"+colors.veryDarken+";color:"+colors.text+"}";var colors=core.colorVariants($("#adminBackGroundBlockColor").val());css+=".block {border: 1px solid "+$("#adminBorderBlockColor").val()+";}.block h4 {background-color: "+colors.normal+";color:"+colors.text+";}",css+="input[type=email],input[type=text],input[type=password],select:not(#bar select),textarea:not(.editorWysiwyg),.inputFile{background-color: "+colors.normal+";color:"+colors.text+";border: 1px solid "+$("#adminBorderBlockColor").val()+";}",$("#themePreview").remove(),$("<style>").attr("type","text/css").attr("id","themePreview").text(css).appendTo("head")})),$("#configAdminReset").on("click",(function(){var _this=$(this);return core.confirm("Êtes-vous sûr de vouloir réinitialiser à son état d'origine le thème de l'administration ?",(function(){$(location).attr("href",_this.attr("href"))}))}));
|
@ -573,7 +573,7 @@ class translate extends common
|
||||
// Nettoyer le cookie
|
||||
helper::deleteCookie('ZWII_CONTENT');
|
||||
// Stocker le choix
|
||||
setcookie('ZWII_CONTENT', $lang, time() + 3600, helper::baseUrl(false, false), '', helper::isHttps(), true);
|
||||
setcookie('ZWII_CONTENT', $lang, time() + 3600, helper::baseUrl(false, false), '', true, helper::isHttps());
|
||||
}
|
||||
|
||||
// Valeurs en sortie
|
||||
|
Loading…
Reference in New Issue
Block a user