Installation d'un site à tester en espagnol

This commit is contained in:
Fred Tempez 2023-04-13 15:45:02 +02:00
parent 9ede4c38f2
commit c405994451
3 changed files with 74 additions and 15 deletions

View File

@ -598,16 +598,6 @@ class common
public function initData($module, $lang, $sampleSite = false) public function initData($module, $lang, $sampleSite = false)
{ {
// Créer la base de données des langues
/*
if ($module === 'language') {
copy('core/module/install/ressource/i18n/language.json', self::DATA_DIR . 'language.json');
$this->copyDir('core/module/install/ressource/i18n', self::I18N_DIR);
unlink(self::I18N_DIR . 'language.json');
return;
}
*/
// Tableau avec les données vierges // Tableau avec les données vierges
require_once('core/module/install/ressource/defaultdata.php'); require_once('core/module/install/ressource/defaultdata.php');
@ -647,7 +637,7 @@ class common
} else { } else {
// En_EN si le contenu localisé n'est pas traduit // En_EN si le contenu localisé n'est pas traduit
if (!isset(init::$defaultDataI18n[$lang])) { if (!isset(init::$defaultDataI18n[$lang])) {
$lang = 'en_EN'; $lang = 'default';
} }
// Messages localisés // Messages localisés
$this->setData(['locale', init::$defaultDataI18n[$lang]['locale']]); $this->setData(['locale', init::$defaultDataI18n[$lang]['locale']]);

View File

@ -478,7 +478,60 @@ class init extends common
] ]
]; ];
public static $defaultDataI18n = [ public static $defaultDataI18n = [
'en_EN' => [ 'es' => [
'locale' => [
'homePageId' => 'home',
'page302' => 'none',
'page403' => 'none',
'page404' => 'none',
'legalPageId' => 'none',
'searchPageId' => 'none',
'searchPageLabel' => 'none',
'sitemapPageLabel' => 'none',
'legalPageLabel' => 'legales',
"metaDescription" => "Zwii es un CMS sin base de datos que facilita la creación y gestión de un sitio web sin necesidad de conocimientos de programación.",
"title" => "¡Tu sitio en unos clics!",
"cookies" => [
"mainLabel" => "Este sitio web utiliza cookies necesarias para su funcionamiento. Estas cookies permiten optimizar su funcionamiento, por ejemplo, memorizando los datos de conexión, el idioma que has elegido o la validación de este mensaje.",
"titleLabel" => "Cookies esenciales",
"linkLegalLabel" => "Consultar el aviso legal",
"cookiesFooterText" => "Cookies",
"buttonValidLabel" => "Aceptar"
]
],
'page' => [
'home' => [
'typeMenu' => 'text',
'iconUrl' => '',
'disable' => false,
'content' => 'home.html',
'hideTitle' => false,
'homePageId' => true,
'breadCrumb' => false,
'metaDescription' => '',
'metaTitle' => '',
'moduleId' => '',
'modulePosition' => 'bottom',
'parentPageId' => '',
'position' => 1,
'group' => self::GROUP_VISITOR,
'targetBlank' => false,
'title' => 'Home page',
'shortTitle' => 'Home',
'block' => '12',
'barLeft' => '',
'barRight' => '',
'displayMenu' => 'none',
'hideMenuSide' => false,
'hideMenuChildren' => false,
'extraPosition' => false,
'css' => '',
'js' => ''
]
],
'html' => '¡Bienvenido a ZwiiCMS, felicidades, esta es su primera página!'
],
'default' => [
'locale' => [ 'locale' => [
'homePageId' => 'home', 'homePageId' => 'home',
'page302' => 'none', 'page302' => 'none',

View File

@ -180,9 +180,8 @@ class translate extends common
file_exists(self::DATA_DIR . $key . '/page.json') && file_exists(self::DATA_DIR . $key . '/page.json') &&
file_exists(self::DATA_DIR . $key . '/module.json') && file_exists(self::DATA_DIR . $key . '/module.json') &&
file_exists(self::DATA_DIR . $key . '/locale.json') file_exists(self::DATA_DIR . $key . '/locale.json')
) ) {
{
if (self::$i18nUI === $key) { if (self::$i18nUI === $key) {
$messageLocale = helper::translate('Langue par défaut'); $messageLocale = helper::translate('Langue par défaut');
} elseif (isset($_SESSION['ZWII_CONTENT']) && $_SESSION['ZWII_CONTENT'] === $key) { } elseif (isset($_SESSION['ZWII_CONTENT']) && $_SESSION['ZWII_CONTENT'] === $key) {
@ -308,11 +307,28 @@ class translate extends common
// Création du contenu // Création du contenu
$lang = $this->getInput('translateAddContent'); $lang = $this->getInput('translateAddContent');
require_once('core/module/install/ressource/defaultdata.php');
// Stockage dans un sous-dossier localisé // Stockage dans un sous-dossier localisé
if (!file_exists(self::DATA_DIR . $lang)) { if (!file_exists(self::DATA_DIR . $lang)) {
mkdir(self::DATA_DIR . $lang, 0755); mkdir(self::DATA_DIR . $lang, 0755);
mkdir(self::DATA_DIR . $lang . '/content', 0755);
} }
// En_EN si le contenu localisé n'est pas traduit
if (!isset(init::$defaultDataI18n[$lang])) {
$langSource = 'default';
}
file_put_contents(self::DATA_DIR . $lang . '/locale.json', json_encode(['locale' => init::$defaultDataI18n[$langSource]['locale']]));
file_put_contents(self::DATA_DIR . $lang . '/page.json', json_encode(['page' => init::$defaultDataI18n[$langSource]['page']]));
file_put_contents(self::DATA_DIR . $lang . '/module.json', json_encode(['module' => []]));
// Créer la page d'accueil
$pageId = init::$defaultDataI18n[$langSource]['locale']['homePageId'];
$content = init::$defaultDataI18n[$langSource]['html'];
file_put_contents(self::DATA_DIR . $lang . '/content/' . init::$defaultDataI18n[$langSource]['page'][$pageId]['content'], $content);
// Valeurs en sortie // Valeurs en sortie
$this->addOutput([ $this->addOutput([
'redirect' => helper::baseUrl() . 'translate', 'redirect' => helper::baseUrl() . 'translate',