forked from ZwiiCMS-Team/ZwiiCMS
12203 bug avec le format de language.json
This commit is contained in:
parent
b491acb4e7
commit
42506dabfd
@ -19,10 +19,14 @@ class translate extends common
|
||||
public static $actions = [
|
||||
'index' => self::GROUP_ADMIN,
|
||||
'copy' => self::GROUP_ADMIN,
|
||||
'add' => self::GROUP_ADMIN, // Ajouter une langue de contenu
|
||||
'edit' => self::GROUP_ADMIN, // Éditer une langue de l'UI
|
||||
'locale' => self::GROUP_ADMIN, // Éditer une langue de contenu
|
||||
'delete' => self::GROUP_ADMIN, // Effacer une langue de contenu ou de l'interface
|
||||
'add' => self::GROUP_ADMIN,
|
||||
// Ajouter une langue de contenu
|
||||
'edit' => self::GROUP_ADMIN,
|
||||
// Éditer une langue de l'UI
|
||||
'locale' => self::GROUP_ADMIN,
|
||||
// Éditer une langue de contenu
|
||||
'delete' => self::GROUP_ADMIN,
|
||||
// Effacer une langue de contenu ou de l'interface
|
||||
'content' => self::GROUP_VISITOR,
|
||||
'update' => self::GROUP_ADMIN,
|
||||
];
|
||||
@ -83,7 +87,7 @@ class translate extends common
|
||||
$enumsStore = json_decode(helper::getUrlContents(common::ZWII_UI_URL . 'languages.json'), true);
|
||||
$enums = $this->getData(['languages']);
|
||||
$enums = array_merge($enums, [
|
||||
$lang => $enumsStore[$lang]
|
||||
$lang => $enumsStore['languages'][$lang]
|
||||
]);
|
||||
$response = (bool) $response && $this->setData(['languages', $enums]);
|
||||
}
|
||||
@ -214,6 +218,7 @@ class translate extends common
|
||||
|
||||
// Langues disponibles en ligne
|
||||
$storeUI = json_decode(helper::getUrlContents(common::ZWII_UI_URL . 'languages.json'), true);
|
||||
$storeUI = $storeUI['languages'];
|
||||
|
||||
// Construction du tableau à partir des langues disponibles dans le store
|
||||
foreach ($installedUI as $file => $value) {
|
||||
@ -246,8 +251,10 @@ class translate extends common
|
||||
]),
|
||||
];
|
||||
}
|
||||
}
|
||||
// Construction du tableau à partir des langues disponibles dans le store
|
||||
foreach ($storeUI as $file => $value) {
|
||||
|
||||
// La langue est-elle installée ?
|
||||
if (array_key_exists($file, $installedUI) === false) {
|
||||
self::$languagesStore[$file] = [
|
||||
@ -264,7 +271,7 @@ class translate extends common
|
||||
];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Valeurs en sortie
|
||||
$this->addOutput([
|
||||
@ -451,10 +458,14 @@ class translate extends common
|
||||
file_put_contents(self::I18N_DIR . $lang . '.json', json_encode($data, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES | JSON_PRETTY_PRINT), LOCK_EX);
|
||||
|
||||
// Mettre à jour le descripteur
|
||||
$this->setData(['languages', $lang, [
|
||||
$this->setData([
|
||||
'languages',
|
||||
$lang,
|
||||
[
|
||||
'version' => $this->getInput('translateEditVersion'),
|
||||
'date' => $this->getInput('translateEditDate', helper::FILTER_DATETIME),
|
||||
]]);
|
||||
]
|
||||
]);
|
||||
|
||||
// Valeurs en sortie
|
||||
$this->addOutput([
|
||||
@ -527,6 +538,7 @@ class translate extends common
|
||||
}
|
||||
switch ($target) {
|
||||
case 'locale':
|
||||
$success = false;
|
||||
// Effacement d'une site dans une langue
|
||||
if (is_dir(self::DATA_DIR . $lang) === true) {
|
||||
$success = $this->removeDir(self::DATA_DIR . $lang);
|
||||
@ -540,12 +552,13 @@ class translate extends common
|
||||
break;
|
||||
|
||||
case 'ui':
|
||||
$success = false;
|
||||
// Effacement d'une langue de l'interface
|
||||
if (file_exists(self::I18N_DIR . $lang . '.json') === true) {
|
||||
$this->deleteData(['languages', $lang]);
|
||||
$success = unlink(self::I18N_DIR . $lang . '.json');
|
||||
}
|
||||
// Effacer la langue dans la base
|
||||
$this->deleteData(['languages', $lang]);
|
||||
// Valeurs en sortie
|
||||
$this->addOutput([
|
||||
'redirect' => helper::baseUrl() . 'translate',
|
||||
@ -574,7 +587,8 @@ class translate extends common
|
||||
* déjà initialisée
|
||||
* fait partie des lnagues installées
|
||||
*/
|
||||
if ( $this->getInput('ZWII_CONTENT') !== $lang
|
||||
if (
|
||||
$this->getInput('ZWII_CONTENT') !== $lang
|
||||
&&
|
||||
is_dir(self::DATA_DIR . $lang)
|
||||
&&
|
||||
|
@ -14,7 +14,7 @@
|
||||
'value' => template::ico('help'),
|
||||
'class' => 'buttonHelp',
|
||||
'help' => 'Consulter l\'aide en ligne'
|
||||
]);*/ ?>
|
||||
]);*/?>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
@ -34,25 +34,27 @@
|
||||
<div class="row">
|
||||
<div class="col12">
|
||||
<div class="block">
|
||||
<h4><?php echo helper::translate('Langues installées'); ?>
|
||||
<h4>
|
||||
<?php echo helper::translate('Langues installées'); ?>
|
||||
</h4>
|
||||
<?php if ($module::$languagesUiInstalled) : ?>
|
||||
<?php if ($module::$languagesUiInstalled): ?>
|
||||
<?php echo template::table([2, 1, 1, 4, 1, 1, 1], $module::$languagesUiInstalled, ['Langues', 'Version', 'Date', '', '', '', '']); ?>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col12">
|
||||
<div class="block">
|
||||
<h4><?php echo helper::translate('Catalogue'); ?>
|
||||
<h4>
|
||||
<?php echo helper::translate('Catalogue'); ?>
|
||||
</h4>
|
||||
<?php if ($module::$languagesStore) : ?>
|
||||
<?php if ($module::$languagesStore): ?>
|
||||
<?php echo template::table([2, 1, 2, 6, 1], $module::$languagesStore, ['Langues', 'Version', 'Date', '', '']); ?>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="contentContainer" class="tabContent">
|
||||
<div class="row">
|
||||
@ -64,7 +66,7 @@
|
||||
<div class="col4 offset2">
|
||||
<?php echo template::button('translateButtonCopyContent', [
|
||||
'href' => helper::baseUrl() . 'translate/copy',
|
||||
'ico' =>'docs',
|
||||
'ico' => 'docs',
|
||||
'disabled' => $module::$siteCopy,
|
||||
'value' => 'Copie de contenus localisés'
|
||||
]); ?>
|
||||
@ -86,11 +88,12 @@
|
||||
<h4>
|
||||
<?php echo helper::translate('Langues installées'); ?>
|
||||
</h4>
|
||||
<?php if ($module::$languagesInstalled) : ?>
|
||||
<?php if ($module::$languagesInstalled): ?>
|
||||
<?php echo template::table([2, 6, 1, 1], $module::$languagesInstalled, ['Langues', '', '', '']); ?>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<?php echo template::formClose(); ?>
|
Loading…
x
Reference in New Issue
Block a user