beta07 Génère un content vide localisé selon la langue sélectionnée
This commit is contained in:
parent
5f2f9ee820
commit
0dca0487ec
@ -49,7 +49,7 @@ class common
|
|||||||
// Numéro de version
|
// Numéro de version
|
||||||
const ZWII_UPDATE_URL = 'https://forge.chapril.org/ZwiiCMS-Team/update/raw/branch/master/';
|
const ZWII_UPDATE_URL = 'https://forge.chapril.org/ZwiiCMS-Team/update/raw/branch/master/';
|
||||||
|
|
||||||
const ZWII_VERSION = '12.0.00-beta06';
|
const ZWII_VERSION = '12.0.00-beta07';
|
||||||
const ZWII_UPDATE_CHANNEL = "test";
|
const ZWII_UPDATE_CHANNEL = "test";
|
||||||
|
|
||||||
public static $actions = [];
|
public static $actions = [];
|
||||||
@ -326,8 +326,10 @@ class common
|
|||||||
];
|
];
|
||||||
// Convertit les dossiers vers la nouvelle structure
|
// Convertit les dossiers vers la nouvelle structure
|
||||||
foreach ($languages as $key => $value) {
|
foreach ($languages as $key => $value) {
|
||||||
if (is_dir(self::DATA_DIR . $key) &&
|
if (
|
||||||
!is_dir(self::DATA_DIR . $value)) {
|
is_dir(self::DATA_DIR . $key) &&
|
||||||
|
!is_dir(self::DATA_DIR . $value)
|
||||||
|
) {
|
||||||
rename(self::DATA_DIR . $key, self::DATA_DIR . $value);
|
rename(self::DATA_DIR . $key, self::DATA_DIR . $value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -689,31 +691,46 @@ class common
|
|||||||
}
|
}
|
||||||
$db = $this->dataFiles[$module];
|
$db = $this->dataFiles[$module];
|
||||||
|
|
||||||
if ($sampleSite === true) {
|
if ($sampleSite === true && $lang === 'fr_FR') {
|
||||||
$db->set($module, init::$siteData[$module]);
|
$db->set($module, init::$siteData[$module]);
|
||||||
} else {
|
} else {
|
||||||
$db->set($module, init::$defaultData[$module]);
|
$db->set($module, init::$defaultData[$module]);
|
||||||
}
|
}
|
||||||
$db->save;
|
$db->save;
|
||||||
|
|
||||||
|
|
||||||
// Dossier des pages
|
|
||||||
if (!is_dir(self::DATA_DIR . $lang . '/content')) {
|
|
||||||
mkdir(self::DATA_DIR . $lang . '/content', 0755);
|
|
||||||
}
|
|
||||||
// Créer le jeu de pages du site de test
|
// Créer le jeu de pages du site de test
|
||||||
if ($module === 'page') {
|
if ($module === 'page') {
|
||||||
|
$langFolder = $lang . '/content/';
|
||||||
|
// Dossier des pages
|
||||||
|
if (!is_dir(self::DATA_DIR . $langFolder)) {
|
||||||
|
mkdir(self::DATA_DIR . $langFolder, 0755);
|
||||||
|
}
|
||||||
// Site de test ou page simple
|
// Site de test ou page simple
|
||||||
|
if ($lang === 'fr_FR') {
|
||||||
if ($sampleSite === true) {
|
if ($sampleSite === true) {
|
||||||
foreach (init::$siteContent as $key => $value) {
|
foreach (init::$siteContent as $key => $value) {
|
||||||
// Creation du contenu de la page
|
// Creation du contenu de la page
|
||||||
if (!empty($this->getData(['page', $key, 'content']))) {
|
if (!empty($this->getData(['page', $key, 'content']))) {
|
||||||
file_put_contents(self::DATA_DIR . $lang . '/content/' . $this->getData(['page', $key, 'content']), $value);
|
file_put_contents(self::DATA_DIR . $langFolder . $this->getData(['page', $key, 'content']), $value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// Créer la page d'accueil
|
// Créer la page d'accueil
|
||||||
file_put_contents(self::DATA_DIR . $lang . '/content/' . 'accueil.html', '<p>Contenu de votre nouvelle page.</p>');
|
file_put_contents(self::DATA_DIR .$langFolder . 'accueil.html', '<p>Contenu de votre nouvelle page.</p>');
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// En_EN si le contenu localisé n'est pas traduit
|
||||||
|
if (!isset(init::$defaultDataI18n[$lang])) {
|
||||||
|
$lang = 'en_EN';
|
||||||
|
}
|
||||||
|
// Messages localisés
|
||||||
|
$this->setData(['locale', init::$defaultDataI18n[$lang]['locale']]);
|
||||||
|
// Page dans une autre langue, page d'accueil
|
||||||
|
$this->setData(['page', init::$defaultDataI18n[$lang]['page']]);
|
||||||
|
// Créer la page d'accueil
|
||||||
|
$pageId = init::$defaultDataI18n[$lang]['locale']['homePageId'];
|
||||||
|
$content = init::$defaultDataI18n[$lang]['html'];
|
||||||
|
file_put_contents(self::DATA_DIR . $langFolder . init::$defaultDataI18n[$lang]['page'][$pageId]['content'], $content);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -173,6 +173,12 @@ class install extends common
|
|||||||
$this->setData(['module', 'blog', 'posts', 'mon-troisieme-article', 'userId', $userId]);
|
$this->setData(['module', 'blog', 'posts', 'mon-troisieme-article', 'userId', $userId]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Jeu réduit pour les pages étrangères
|
||||||
|
if ( $lang !== 'fr_FR') {
|
||||||
|
$this->initData('page', self::$i18nContent, false);
|
||||||
|
$this->initData('module', self::$i18nContent, false);
|
||||||
|
}
|
||||||
|
|
||||||
// Sauvegarder la configuration du Proxy
|
// Sauvegarder la configuration du Proxy
|
||||||
$this->setData(['config', 'proxyType', $this->getInput('installProxyType')]);
|
$this->setData(['config', 'proxyType', $this->getInput('installProxyType')]);
|
||||||
$this->setData(['config', 'proxyUrl', $this->getInput('installProxyUrl')]);
|
$this->setData(['config', 'proxyUrl', $this->getInput('installProxyUrl')]);
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
<?php
|
<?php
|
||||||
class init extends common {
|
class init extends common
|
||||||
|
{
|
||||||
public static $defaultData = [
|
public static $defaultData = [
|
||||||
'config' => [
|
'config' => [
|
||||||
'autoBackup' => true,
|
'autoBackup' => true,
|
||||||
@ -333,6 +334,61 @@ class init extends common {
|
|||||||
],
|
],
|
||||||
'blacklist' => []
|
'blacklist' => []
|
||||||
];
|
];
|
||||||
|
public static $defaultDataI18n = [
|
||||||
|
'en_EN' => [
|
||||||
|
'locale' => [
|
||||||
|
'homePageId' => 'home',
|
||||||
|
'page302' => 'none',
|
||||||
|
'page403' => 'none',
|
||||||
|
'page404' => 'none',
|
||||||
|
'legalPageId' => 'none',
|
||||||
|
'searchPageId' => 'none',
|
||||||
|
'searchPageLabel' => 'none',
|
||||||
|
'sitemapPageLabel' => 'none',
|
||||||
|
'legalPageLabel' => 'legals',
|
||||||
|
'metaDescription' => 'Zwii is a database-free CMS that makes it easy to create and manage a website without any programming knowledge.',
|
||||||
|
'title' => 'Your site in a few clicks!',
|
||||||
|
'cookies' => [
|
||||||
|
'mainLabel' => 'This site uses cookies necessary for its operation, they make it possible to streamline its operation for example by memorizing the connection data, the language you have chosen or the validation of this message.',
|
||||||
|
'titleLabel' => 'Essential cookies',
|
||||||
|
'linkLegalLabel' => 'Consult the legal notice',
|
||||||
|
'cookiesFooterText' => 'Cookies',
|
||||||
|
'buttonValidLabel' => 'Ok'
|
||||||
|
]
|
||||||
|
],
|
||||||
|
'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' => 'HomePage',
|
||||||
|
'shortTitle' => 'Home',
|
||||||
|
'block' => '12',
|
||||||
|
'barLeft' => '',
|
||||||
|
'barRight' => '',
|
||||||
|
'displayMenu' => 'none',
|
||||||
|
'hideMenuSide' => false,
|
||||||
|
'hideMenuChildren' => false,
|
||||||
|
'extraPosition' => false,
|
||||||
|
'css' => '',
|
||||||
|
'js' => ''
|
||||||
|
]
|
||||||
|
],
|
||||||
|
'html' => 'Welcome in this ZiiCMS, this is you first page !'
|
||||||
|
]
|
||||||
|
];
|
||||||
|
|
||||||
|
|
||||||
public static $siteData = [
|
public static $siteData = [
|
||||||
|
@ -207,30 +207,11 @@ class translate extends common
|
|||||||
// Création du contenu
|
// Création du contenu
|
||||||
$lang = $this->getInput('translateAddContent');
|
$lang = $this->getInput('translateAddContent');
|
||||||
|
|
||||||
// Tableau avec les données vierges
|
// Stockage dans un sous-dossier localisé
|
||||||
require_once('core/module/install/ressource/defaultdata.php');
|
|
||||||
|
|
||||||
// Créer la structure
|
|
||||||
foreach (['page', 'module', 'locale'] as $key) {
|
|
||||||
|
|
||||||
// Sus-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);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Initialiser la classe
|
|
||||||
$db = new \Prowebcraft\JsonDb([
|
|
||||||
'name' => $key . '.json',
|
|
||||||
'dir' => self::DATA_DIR . $lang,
|
|
||||||
'backup' => file_exists('site/data/.backup')
|
|
||||||
]);;
|
|
||||||
|
|
||||||
// Capturer et sauver
|
|
||||||
$db->set($key, init::$defaultData[$key]);
|
|
||||||
$db->save;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// Valeurs en sortie
|
// Valeurs en sortie
|
||||||
$this->addOutput([
|
$this->addOutput([
|
||||||
'redirect' => helper::baseUrl() . 'translate',
|
'redirect' => helper::baseUrl() . 'translate',
|
||||||
|
@ -17,20 +17,21 @@
|
|||||||
]);*/ ?>
|
]);*/ ?>
|
||||||
</div>
|
</div>
|
||||||
<div class="col1 offset8">
|
<div class="col1 offset8">
|
||||||
<?php echo template::button('translateButtonAddContent', [
|
|
||||||
'href' => helper::baseUrl() . 'translate/add',
|
|
||||||
'value' => template::ico('plus'),
|
|
||||||
'class' => 'buttonGreen',
|
|
||||||
'help' => 'Nouveau contenu localisé'
|
|
||||||
]); ?>
|
|
||||||
</div>
|
|
||||||
<div class="col1">
|
|
||||||
<?php echo template::button('translateButtonCopyContent', [
|
<?php echo template::button('translateButtonCopyContent', [
|
||||||
'href' => helper::baseUrl() . 'translate/copy',
|
'href' => helper::baseUrl() . 'translate/copy',
|
||||||
'value' => template::ico('docs'),
|
'value' => template::ico('docs'),
|
||||||
'disabled' => $module::$siteCopy,
|
'disabled' => $module::$siteCopy,
|
||||||
'help' => 'Copie de contenus localisés'
|
'help' => 'Copie de contenus localisés'
|
||||||
]); ?>
|
]); ?>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="col1">
|
||||||
|
<?php echo template::button('translateButtonAddContent', [
|
||||||
|
'href' => helper::baseUrl() . 'translate/add',
|
||||||
|
'value' => template::ico('plus'),
|
||||||
|
'class' => 'buttonGreen',
|
||||||
|
'help' => 'Nouveau contenu localisé'
|
||||||
|
]); ?>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user