forked from ZwiiCMS-Team/ZwiiCMS
12309 Changement de la langue de site par défaut
This commit is contained in:
parent
63bb78a0fd
commit
24550749b7
@ -154,7 +154,7 @@ class install extends common
|
||||
// par défaut le contenu est la langue d'installation
|
||||
self::$i18nContent = self::$i18nUI;
|
||||
$_SESSION['ZWII_CONTENT'] = self::$i18nContent;
|
||||
|
||||
|
||||
// Création du dossier de langue avec le marqueur de langue par défaut
|
||||
if (!is_dir(self::DATA_DIR . self::$i18nContent)) {
|
||||
mkdir(self::DATA_DIR . self::$i18nContent);
|
||||
|
@ -614,6 +614,6 @@
|
||||
"Couleur icône haut de page": "Color of top page icon",
|
||||
"Icône haut de page, couleur arrière-plan": "Top page icon, background color",
|
||||
"Disponible si le consentement des cookies est activé.": "Available if cookie consent is enabled.",
|
||||
"Affiche les icônes de gestion du compte et de déconnexion des membres simples connectés.": "Displays account management icons and logout function for logged-in users."
|
||||
|
||||
"Affiche les icônes de gestion du compte et de déconnexion des membres simples connectés.": "Displays account management icons and logout function for logged-in users.",
|
||||
"Définir par défaut": "Set as default"
|
||||
}
|
@ -614,6 +614,6 @@
|
||||
"Couleur icône haut de page":"Color del icono superior de la página",
|
||||
"Icône haut de page, couleur arrière-plan":"Icono superior de la página, color de fondo",
|
||||
"Disponible si le consentement des cookies est activé.": "Disponible si se ha otorgado el consentimiento de las cookies.",
|
||||
"Affiche les icônes de gestion du compte et de déconnexion des membres simples connectés.": "Muestra los iconos de gestión de cuenta y de cierre de sesión para los miembros simples conectados."
|
||||
|
||||
"Affiche les icônes de gestion du compte et de déconnexion des membres simples connectés.": "Muestra los iconos de gestión de cuenta y de cierre de sesión para los miembros simples conectados.",
|
||||
"Définir par défaut": "Establecer como predeterminado"
|
||||
}
|
@ -614,5 +614,6 @@
|
||||
"Couleur icône haut de page": "",
|
||||
"Icône haut de page, couleur arrière-plan": "",
|
||||
"Disponible si le consentement des cookies est activé.": "",
|
||||
"Affiche les icônes de gestion du compte et de déconnexion des membres simples connectés.:": ""
|
||||
"Affiche les icônes de gestion du compte et de déconnexion des membres simples connectés.:": "",
|
||||
"Définir par défaut": ""
|
||||
}
|
@ -29,6 +29,7 @@ class translate extends common
|
||||
// Effacer une langue de contenu ou de l'interface
|
||||
'content' => self::GROUP_VISITOR,
|
||||
'update' => self::GROUP_ADMIN,
|
||||
'default' => self::GROUP_ADMIN
|
||||
];
|
||||
|
||||
const PAGINATION = '20';
|
||||
@ -206,29 +207,29 @@ class translate extends common
|
||||
// file_exists(self::DATA_DIR . $key . '/module.json') &&
|
||||
// file_exists(self::DATA_DIR . $key . '/locale.json')
|
||||
// ) {
|
||||
if (file_exists(self::DATA_DIR . $key . '/.default')) {
|
||||
$messageLocale = helper::translate('Langue par défaut');
|
||||
} elseif (isset($_SESSION['ZWII_CONTENT']) && $_SESSION['ZWII_CONTENT'] === $key) {
|
||||
$messageLocale = helper::translate('Langue du site par défaut');
|
||||
} else {
|
||||
$messageLocale = '';
|
||||
}
|
||||
self::$languagesInstalled[] = [
|
||||
template::flag($key, '20 %') . ' ' . $value . ' (' . $key . ')',
|
||||
$messageLocale,
|
||||
template::button('translateContentLanguageLocaleEdit' . $key, [
|
||||
'class' => file_exists(self::DATA_DIR . $key . '/locale.json') ? '' : ' disabled',
|
||||
'href' => helper::baseUrl() . $this->getUrl(0) . '/locale/' . $key,
|
||||
'value' => template::ico('pencil'),
|
||||
'help' => 'Éditer'
|
||||
]),
|
||||
template::button('translateContentLanguageLocaleDelete' . $key, [
|
||||
'class' => 'translateDelete buttonRed' . ($messageLocale ? ' disabled' : ''),
|
||||
'href' => helper::baseUrl() . $this->getUrl(0) . '/delete/locale/' . $key . '/' . $_SESSION['csrf'],
|
||||
'value' => template::ico('trash'),
|
||||
'help' => 'Supprimer',
|
||||
])
|
||||
];
|
||||
if (file_exists(self::DATA_DIR . $key . '/.default')) {
|
||||
$messageLocale = helper::translate('Langue du site par défaut');
|
||||
} else {
|
||||
$messageLocale = '<a href="'
|
||||
. helper::baseUrl() . $this->getUrl(0) . '/default/' . $key . '/' . $_SESSION['csrf']
|
||||
. '">' . helper::translate('Définir par défaut') . '</a>';
|
||||
}
|
||||
self::$languagesInstalled[] = [
|
||||
template::flag($key, '20 %') . ' ' . $value . ' (' . $key . ')',
|
||||
$messageLocale,
|
||||
template::button('translateContentLanguageLocaleEdit' . $key, [
|
||||
'class' => file_exists(self::DATA_DIR . $key . '/locale.json') ? '' : ' disabled',
|
||||
'href' => helper::baseUrl() . $this->getUrl(0) . '/locale/' . $key,
|
||||
'value' => template::ico('pencil'),
|
||||
'help' => 'Éditer'
|
||||
]),
|
||||
template::button('translateContentLanguageLocaleDelete' . $key, [
|
||||
'class' => 'translateDelete buttonRed' . ($messageLocale === 'Langue du site par défaut' ? ' disabled' : ''),
|
||||
'href' => helper::baseUrl() . $this->getUrl(0) . '/delete/locale/' . $key . '/' . $_SESSION['csrf'],
|
||||
'value' => template::ico('trash'),
|
||||
'help' => 'Supprimer',
|
||||
])
|
||||
];
|
||||
//}
|
||||
}
|
||||
|
||||
@ -607,6 +608,40 @@ class translate extends common
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Modifie la langue du site par défaut
|
||||
*
|
||||
*/
|
||||
public function default()
|
||||
{
|
||||
// Jeton incorrect ou URl avec le code langue incorrecte
|
||||
$lang = $this->getUrl(2);
|
||||
if (
|
||||
$this->getUrl(3) !== $_SESSION['csrf']
|
||||
|| array_key_exists($lang, self::$languages) === false
|
||||
) {
|
||||
// Valeurs en sortie
|
||||
$this->addOutput([
|
||||
'redirect' => helper::baseUrl() . 'translate',
|
||||
'state' => false,
|
||||
'notification' => helper::translate('Action interdite')
|
||||
]);
|
||||
}
|
||||
|
||||
foreach (self::$languages as $key => $value) {
|
||||
if (file_exists(self::DATA_DIR . $key . '/.default')) {
|
||||
unlink(self::DATA_DIR . $key . '/.default');
|
||||
touch(self::DATA_DIR . $lang . '/.default');
|
||||
break;
|
||||
}
|
||||
}
|
||||
// Valeurs en sortie
|
||||
$this->addOutput([
|
||||
'notification' => helper::translate('Modifications enregistrées'),
|
||||
'redirect' => helper::baseUrl() . 'translate',
|
||||
'state' => true,
|
||||
]);
|
||||
}
|
||||
|
||||
/*
|
||||
* Traitement du changement de langue
|
||||
|
Loading…
Reference in New Issue
Block a user