Correctifs fichier de langue et interface

This commit is contained in:
Fred Tempez 2022-10-14 20:26:37 +02:00
parent c761c08d70
commit 405d0ff07e
5 changed files with 35 additions and 35 deletions

View File

@ -118,18 +118,18 @@ class translate extends common
// Jeton incorrect ou URl avec le code langue incorrecte // Jeton incorrect ou URl avec le code langue incorrecte
if ( if (
$this->getUrl(3) === $_SESSION['csrf'] $this->getUrl(3) === $_SESSION['csrf']
|| array_key_exists($this->getUrl(2), self::$languages) ) { || array_key_exists($this->getUrl(2), self::$languages)
) {
// Sauvegarder les langues de contenu // Sauvegarder les langues de contenu
$this->setData(['config', 'i18n', 'interface', $this->getUrl(2)]); $this->setData(['config', 'i18n', 'interface', $this->getUrl(2)]);
// Valeurs en sortie // Valeurs en sortie
$this->addOutput([ $this->addOutput([
'title' => helper::translate('Langues'), 'redirect' => helper::baseUrl() . 'translate',
'view' => 'index', 'notification' => helper::translate('Modifications enregistrées'),
'notification' => helper::translate('Modifications enregistrées'), 'state' => true
'state' => true ]);
]);
} }
// Préparation du formulaire // Préparation du formulaire
@ -142,7 +142,7 @@ class translate extends common
self::$languagesInstalled[] = [ self::$languagesInstalled[] = [
template::flag($key, '20 %'), template::flag($key, '20 %'),
$value . ' (' . $key . ')', $value . ' (' . $key . ')',
self::$i18nUI === $key ? 'Interface' : '', self::$i18nUI === $key ? helper::translate('Interface') : '',
'', '',
template::button('translateContentLanguageEdit' . $key, [ template::button('translateContentLanguageEdit' . $key, [
'href' => helper::baseUrl() . $this->getUrl(0) . '/locale/' . $key . '/' . $_SESSION['csrf'], 'href' => helper::baseUrl() . $this->getUrl(0) . '/locale/' . $key . '/' . $_SESSION['csrf'],
@ -174,9 +174,9 @@ class translate extends common
//self::$i18nFiles[basename($file, '.json')] = self::$languages[basename($file, '.json')]; //self::$i18nFiles[basename($file, '.json')] = self::$languages[basename($file, '.json')];
$selected = basename($file, '.json'); $selected = basename($file, '.json');
self::$languagesUiInstalled[$file] = [ self::$languagesUiInstalled[$file] = [
self::$languages[$selected ], self::$languages[$selected],
template::flag($selected, '20 %'), template::flag($selected, '20 %'),
self::$i18nUI === $selected ? 'Interface' : '', self::$i18nUI === $selected ? helper::translate('Interface') : '',
'', '',
template::button('translateContentLanguageEdit' . $file, [ template::button('translateContentLanguageEdit' . $file, [
'href' => helper::baseUrl() . $this->getUrl(0) . '/ui/' . $selected . '/' . $_SESSION['csrf'], 'href' => helper::baseUrl() . $this->getUrl(0) . '/ui/' . $selected . '/' . $_SESSION['csrf'],
@ -197,7 +197,7 @@ class translate extends common
// Valeurs en sortie // Valeurs en sortie
$this->addOutput([ $this->addOutput([
'title' => helper::translate('Langues'), 'title' => helper::translate('Multilangue'),
'view' => 'index' 'view' => 'index'
]); ]);
} }
@ -317,7 +317,7 @@ class translate extends common
$this->setData(['locale', $data['locale']]); $this->setData(['locale', $data['locale']]);
} else { } else {
// Sauver sur le disque // Sauver sur le disque
file_put_contents(self::DATA_DIR . $this->getUrl(2) . '/locale.json', json_encode($data, JSON_UNESCAPED_UNICODE), LOCK_EX); file_put_contents(self::DATA_DIR . $this->getUrl(2) . '/locale.json', json_encode($data, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES | JSON_PRETTY_PRINT), LOCK_EX);
} }
// Sauvegarde la langue de l'UI // Sauvegarde la langue de l'UI
@ -406,14 +406,15 @@ class translate extends common
$data = json_decode(file_get_contents(self::I18N_DIR . $this->getUrl(2) . '.json'), true); $data = json_decode(file_get_contents(self::I18N_DIR . $this->getUrl(2) . '.json'), true);
foreach ($data as $key => $value) { foreach ($data as $key => $value) {
$data[$key] = $this->getInput('translateString' . array_search($key ,array_keys($data), helper::FILTER_STRING_SHORT)); $data[$key] = $this->getInput('translateString' . array_search($key, array_keys($data), helper::FILTER_STRING_SHORT));
} }
file_put_contents (self::I18N_DIR . $this->getUrl(2) . '.json', json_encode($data, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES | JSON_PRETTY_PRINT), LOCK_EX); file_put_contents(self::I18N_DIR . $this->getUrl(2) . '.json', json_encode($data, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES | JSON_PRETTY_PRINT), LOCK_EX);
// Valeurs en sortie // Valeurs en sortie
$this->addOutput([ $this->addOutput([
'notification' => helper::translate('Modifications enregistrées'), 'notification' => helper::translate('Modifications enregistrées'),
'redirect' => helper::baseUrl() . 'translate',
'state' => true 'state' => true
]); ]);
} }
@ -427,12 +428,12 @@ class translate extends common
// Ajout des champs absents selon la langue de référence // Ajout des champs absents selon la langue de référence
$dataFr = json_decode(file_get_contents(self::I18N_DIR . 'fr_FR.json'), true); $dataFr = json_decode(file_get_contents(self::I18N_DIR . 'fr_FR.json'), true);
foreach($dataFr as $key => $value) { foreach ($dataFr as $key => $value) {
if (!array_key_exists($key, $data)) { if (!array_key_exists($key, $data)) {
$data[$key] = ''; $data[$key] = '';
} }
} }
file_put_contents (self::I18N_DIR . $this->getUrl(2) . '.json', json_encode($data, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES | JSON_PRETTY_PRINT), LOCK_EX); file_put_contents(self::I18N_DIR . $this->getUrl(2) . '.json', json_encode($data, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES | JSON_PRETTY_PRINT), LOCK_EX);
// Tableau des chaines à traduire dans la langue sélectionnée // Tableau des chaines à traduire dans la langue sélectionnée
foreach ($data as $key => $value) { foreach ($data as $key => $value) {
@ -441,7 +442,7 @@ class translate extends common
// Valeurs en sortie // Valeurs en sortie
$this->addOutput([ $this->addOutput([
'title' => helper::translate('Paramètres') . ' ' . template::flag($this->getUrl(2), '20 %'), 'title' => helper::translate('Traduction de l\'interface') . ' ' . template::flag($this->getUrl(2), '20 %'),
'view' => 'ui' 'view' => 'ui'
]); ]);
} }

View File

@ -36,11 +36,11 @@
<div class="tab"> <div class="tab">
<?php echo template::button('translateContentButton', [ <?php echo template::button('translateContentButton', [
'value' => 'Langues du contenu', 'value' => 'Traductions du site',
'class' => 'buttonTab' 'class' => 'buttonTab'
]); ?> ]); ?>
<?php echo template::button('translateUiButton', [ <?php echo template::button('translateUiButton', [
'value' => 'Interface', 'value' => 'Traductions de l\'interface',
'class' => 'buttonTab' 'class' => 'buttonTab'
]); ?> ]); ?>
</div> </div>

View File

@ -14,9 +14,6 @@
<div class="row"> <div class="row">
<div class="col12"> <div class="col12">
<div class="block"> <div class="block">
<h4>
<?php echo helper::translate('Interface'); ?>
</h4>
<div class="row"> <div class="row">
<?php foreach ($module::$languagesUiInstalled as $key => $value) : ?> <?php foreach ($module::$languagesUiInstalled as $key => $value) : ?>
<div class="col6"> <div class="col6">

View File

@ -251,8 +251,7 @@
"Contenu": "Contenido", "Contenu": "Contenido",
"Mise en forme des titres": "Formato de t&iacute;tulo", "Mise en forme des titres": "Formato de t&iacute;tulo",
"Copie des traductions rédigées": "Copia de traducciones redactadas", "Copie des traductions rédigées": "Copia de traducciones redactadas",
"Traduite ZwiiCMS": "ZwiiCMS traducido", "Multilangue": "Multiling&uuml;e",
"Traduction du contenu": "Traducci&oacute;n de contenido",
"Identité": "Identificaci&oacute;n", "Identité": "Identificaci&oacute;n",
"Permissions :": "Permisos", "Permissions :": "Permisos",
"Accès aux pages privées": "Acceso a p&aacute;ginas privadas", "Accès aux pages privées": "Acceso a p&aacute;ginas privadas",
@ -305,9 +304,11 @@
"Gestion": "Administrar", "Gestion": "Administrar",
"Administration": "Administraci&oacute;n", "Administration": "Administraci&oacute;n",
"Langues": "Idiomas", "Langues": "Idiomas",
"Interface": "Interfaz", "Traductions de l'interface": "Idiomas interfaz",
"Langues du contenu": "Idiomas del contenido", "Traduction de l'interface": "Idiomas interfaz",
"Traductions installées": "Idiomas instalados", "Traductions installées": "Idiomas instalados",
"Traduction supprimée": "Traducci&oacute;n eliminada",
"Traductions du site": "Idiomas sitio",
"Langue de l'administration": "Idioma de la administraci&oacute;n", "Langue de l'administration": "Idioma de la administraci&oacute;n",
"Langues installées": "Idiomas instalados", "Langues installées": "Idiomas instalados",
"Dans quelle langue utiliserez-vous Zwii ?": "&iquest;En qu&eacute; idioma usar&aacute; Zwii?", "Dans quelle langue utiliserez-vous Zwii ?": "&iquest;En qu&eacute; idioma usar&aacute; Zwii?",
@ -435,7 +436,6 @@
"Erreur de copie, vérifiez les permissions": "error de copia, verifique las permisiones", "Erreur de copie, vérifiez les permissions": "error de copia, verifique las permisiones",
"Les langues sélectionnées sont identiques": "Los idiomas seleccionados son id&eacute;nticos", "Les langues sélectionnées sont identiques": "Los idiomas seleccionados son id&eacute;nticos",
"Erreur d'URL": "Error de URL", "Erreur d'URL": "Error de URL",
"Traduction supprimée": "Traducci&oacute;n eliminada",
"Impossible de supprimer votre propre compte": "No puede eliminar su propia cuenta", "Impossible de supprimer votre propre compte": "No puede eliminar su propia cuenta",
"Utilisateur supprimé": "Usuario eliminado", "Utilisateur supprimé": "Usuario eliminado",
"Incorrect": "Incorrecto", "Incorrect": "Incorrecto",
@ -448,7 +448,7 @@
"Accès bloqué %d minutes": "Acceso bloqueado minutos", "Accès bloqué %d minutes": "Acceso bloqueado minutos",
"Déconnexion !": "&iexcl;Cerrar sesi&oacute;n!", "Déconnexion !": "&iexcl;Cerrar sesi&oacute;n!",
"Nouveau mot de passe enregistré": "Nueva contrase&ntilde;a guardada", "Nouveau mot de passe enregistré": "Nueva contrase&ntilde;a guardada",
"'Rien à importer, erreur de format ou fichier incorrect": "&#039;Nada que importar, error de formato o archivo incorrecto", "Rien à importer, erreur de format ou fichier incorrect": "Nada que importar, error de formato o archivo incorrecto",
"Importation effectuée": "Importaci&oacute;n realizada", "Importation effectuée": "Importaci&oacute;n realizada",
"Erreur de lecture, vérifiez les permissions": "Error de lectura, verifique los permisos", "Erreur de lecture, vérifiez les permissions": "Error de lectura, verifique los permisos",
"Sécurité désactivée": "Seguridad desactivada", "Sécurité désactivée": "Seguridad desactivada",
@ -483,5 +483,6 @@
"Le sous-menu de la page parente": "El submen&uacute; de la p&aacute;gina principal", "Le sous-menu de la page parente": "El submen&uacute; de la p&aacute;gina principal",
"Menu standard": "Men&uacute; est&aacute;ndar", "Menu standard": "Men&uacute; est&aacute;ndar",
"Menu accessoire": "Men&uacute; accesorio", "Menu accessoire": "Men&uacute; accesorio",
"Activer": "Activar" "Activer": "Activar",
"Interface": "Interfaz"
} }

View File

@ -251,8 +251,6 @@
"Contenu": "", "Contenu": "",
"Mise en forme des titres": "", "Mise en forme des titres": "",
"Copie des traductions rédigées": "", "Copie des traductions rédigées": "",
"Traduite ZwiiCMS": "",
"Traduction du contenu": "",
"Identité": "", "Identité": "",
"Permissions :": "", "Permissions :": "",
"Accès aux pages privées": "", "Accès aux pages privées": "",
@ -305,9 +303,11 @@
"Gestion": "", "Gestion": "",
"Administration": "", "Administration": "",
"Langues": "", "Langues": "",
"Interface": "", "Traductions de l'interface": "",
"Langues du contenu": "", "Traduction de l'interface": "",
"Traductions installées": "", "Traductions installées": "",
"Traductions du site": "",
"Interface": "",
"Langue de l'administration": "", "Langue de l'administration": "",
"Langues installées": "", "Langues installées": "",
"Dans quelle langue utiliserez-vous Zwii ?": "", "Dans quelle langue utiliserez-vous Zwii ?": "",
@ -360,6 +360,7 @@
"Permission et référencement": "", "Permission et référencement": "",
"Le curseur horizontal règle le niveau de transparence, le placer tout à la gauche pour un surlignement invisible.": "", "Le curseur horizontal règle le niveau de transparence, le placer tout à la gauche pour un surlignement invisible.": "",
"Contenu multilangues": "", "Contenu multilangues": "",
"Multilangue": "",
"Extension": "", "Extension": "",
"Permission": "", "Permission": "",
"Emplacement dans le menu": "", "Emplacement dans le menu": "",
@ -446,7 +447,7 @@
"Accès bloqué %d minutes": "", "Accès bloqué %d minutes": "",
"Déconnexion !": "", "Déconnexion !": "",
"Nouveau mot de passe enregistré": "", "Nouveau mot de passe enregistré": "",
"'Rien à importer, erreur de format ou fichier incorrect": "", "Rien à importer, erreur de format ou fichier incorrect": "",
"Importation effectuée": "", "Importation effectuée": "",
"Erreur de lecture, vérifiez les permissions": "", "Erreur de lecture, vérifiez les permissions": "",
"Sécurité désactivée": "", "Sécurité désactivée": "",