La langue est initialisée à la création
This commit is contained in:
parent
46a3d36986
commit
ee03f49920
@ -328,15 +328,7 @@ class common
|
||||
\setlocale(LC_ALL, self::$i18nContent . '.UTF8');
|
||||
|
||||
// Instanciation de la classe des entrées / sorties
|
||||
// Récupère les descripteurs
|
||||
foreach ($this->dataFiles as $keys => $value) {
|
||||
// Constructeur JsonDB;
|
||||
$this->dataFiles[$keys] = new \Prowebcraft\JsonDb([
|
||||
'name' => $keys . '.json',
|
||||
'dir' => $this->dataPath($keys, self::$i18nContent),
|
||||
'backup' => file_exists('site/data/.backup')
|
||||
]);
|
||||
}
|
||||
$this->jsonDB(self::$i18nContent);
|
||||
|
||||
// Installation fraîche, initialisation des modules
|
||||
if ($this->user === []) {
|
||||
@ -595,6 +587,21 @@ class common
|
||||
return unlink(self::DATA_DIR . $lang . '/content/' . $this->getData(['page', $page, 'content']));
|
||||
}
|
||||
|
||||
|
||||
public function jsonDB($lang)
|
||||
{
|
||||
// Instanciation de la classe des entrées / sorties
|
||||
// Récupère les descripteurs
|
||||
foreach ($this->dataFiles as $keys => $value) {
|
||||
// Constructeur JsonDB;
|
||||
$this->dataFiles[$keys] = new \Prowebcraft\JsonDb([
|
||||
'name' => $keys . '.json',
|
||||
'dir' => $this->dataPath($keys, $lang),
|
||||
'backup' => file_exists('site/data/.backup')
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Initialisation des données
|
||||
* @param string $module : nom du module à générer
|
||||
@ -626,7 +633,7 @@ class common
|
||||
}
|
||||
// Site en français avec site exemple
|
||||
if ($lang == 'fr_FR' && $sampleSite === true) {
|
||||
$this->setData([$module,init::$siteTemplate[$module]]);
|
||||
$this->setData([$module, init::$siteTemplate[$module]]);
|
||||
// Création des pages
|
||||
foreach (init::$siteContent as $key => $value) {
|
||||
$this->setPage($key, $value, 'fr_FR');
|
||||
@ -634,7 +641,7 @@ class common
|
||||
// Version en langue étrangère ou fr_FR sans site de test
|
||||
} else {
|
||||
// En_EN par défaut si le contenu localisé n'est pas traduit
|
||||
$langDefault = array_key_exists($lang, init::$defaultDataI18n) === true ? $lang : 'default';
|
||||
$langDefault = array_key_exists($lang, init::$defaultDataI18n) === true ? $lang : 'default';
|
||||
// Charger les données de cette langue
|
||||
$this->setData([$module, init::$defaultDataI18n[$langDefault][$module]]);
|
||||
// Créer la page d'accueil, une seule page dans cette configuration
|
||||
|
@ -94,8 +94,8 @@ class language extends common
|
||||
if (
|
||||
is_array($languageData) &&
|
||||
is_array($descripteur['languages'][$lang])
|
||||
) {
|
||||
$response = $this->setData(['language', $lang, $descripteur['languages'][$lang] ]);
|
||||
) {
|
||||
$response = $this->setData(['language', $lang, $descripteur['languages'][$lang]]);
|
||||
$response = $response || file_put_contents(self::I18N_DIR . $lang . '.json', json_encode($response, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES | JSON_PRETTY_PRINT));
|
||||
}
|
||||
|
||||
@ -254,13 +254,13 @@ class language extends common
|
||||
//self::$i18nUI === $file ? helper::translate('Interface') : '',
|
||||
'',
|
||||
/*
|
||||
template::button('translateContentLanguageUIEdit' . $file, [
|
||||
'href' => helper::baseUrl() . $this->getUrl(0) . '/edit/' . $file,
|
||||
'value' => template::ico('pencil'),
|
||||
'help' => 'Éditer',
|
||||
'disabled' => 'fr_FR' === $file
|
||||
]),
|
||||
*/
|
||||
template::button('translateContentLanguageUIEdit' . $file, [
|
||||
'href' => helper::baseUrl() . $this->getUrl(0) . '/edit/' . $file,
|
||||
'value' => template::ico('pencil'),
|
||||
'help' => 'Éditer',
|
||||
'disabled' => 'fr_FR' === $file
|
||||
]),
|
||||
*/
|
||||
|
||||
template::button('translateContentLanguageUIDownload' . $file, [
|
||||
'class' => version_compare($installedUI[$file]['version'], $storeUI[$file]['version']) < 0 ? 'buttonGreen' : '',
|
||||
@ -319,13 +319,17 @@ class language extends common
|
||||
$this->isPost()
|
||||
) {
|
||||
|
||||
// Création du contenu
|
||||
$lang = $this->getInput('translateAddContent');
|
||||
|
||||
// Constructeur pour cette langue
|
||||
$this->jsonDB($lang);
|
||||
|
||||
// Création du contenu
|
||||
$this->initData('page', $lang);
|
||||
$this->initData('module', $lang);
|
||||
$this->initData('locale', $lang);
|
||||
|
||||
|
||||
// Valeurs en sortie
|
||||
$this->addOutput([
|
||||
'redirect' => helper::baseUrl() . 'language',
|
||||
|
Loading…
Reference in New Issue
Block a user