initData à terminer

This commit is contained in:
Fred Tempez 2023-04-14 07:32:23 +02:00
parent c405994451
commit a66bc7d948
2 changed files with 85 additions and 84 deletions

View File

@ -231,7 +231,7 @@ class common
'theme' => '',
'user' => '',
'language' => '',
'profil'=> '',
'profil' => '',
];
public static $fontsWebSafe = [
@ -604,25 +604,24 @@ class common
// Stockage dans un sous-dossier localisé
if (!file_exists(self::DATA_DIR . $lang)) {
mkdir(self::DATA_DIR . $lang, 0755);
mkdir(self::DATA_DIR . $lang . '/content', 0755);
}
$db = $this->dataFiles[$module];
if ($sampleSite === true && $lang === 'fr_FR') {
$db->set($module, init::$siteData[$module]);
} else {
$db->set($module, init::$defaultData[$module]);
}
$db->save;
if ($lang == 'fr_FR') {
// Stockage dans un sous-dossier localisé
// Créer le jeu de pages du site de test
if ($module === 'page') {
$langFolder = $lang . '/content/';
// Dossier des pages
if (!is_dir(self::DATA_DIR . $langFolder)) {
mkdir(self::DATA_DIR . $langFolder, 0755);
$db = $this->dataFiles[$module];
if ($sampleSite === true) {
file_put_contents(self::DATA_DIR . $lang . '/' . $module . '.json', json_encode([$module => init::$siteTemplate[$langFolder][$module]]));
} else {
file_put_contents(self::DATA_DIR . $lang . '/' . $module . '.json', json_encode([$module => init::$defaultDataI18n[$langFolder][$module]]));
}
// Site de test ou page simple
if ($lang === 'fr_FR') {
// Créer le jeu de pages du site de test
if ($module === 'page') {
$langFolder = $lang . '/content/';
// Site de test ou page simple
if ($sampleSite === true) {
foreach (init::$siteContent as $key => $value) {
// Creation du contenu de la page
@ -634,20 +633,19 @@ class common
// Créer la page d'accueil
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 = 'default';
}
// 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);
}
} else {
// En_EN si le contenu localisé n'est pas traduit
if (!isset(init::$defaultDataI18n[$lang])) {
$langFolder = 'default';
}
file_put_contents(self::DATA_DIR . $lang . '/' . $module . '.json', json_encode([$module => init::$defaultDataI18n[$langFolder][$module]]));
// Créer la page d'accueil
$pageId = init::$defaultDataI18n[$langFolder]['locale']['homePageId'];
$content = init::$defaultDataI18n[$langFolder]['html'];
file_put_contents(self::DATA_DIR . $lang . '/content/' . init::$defaultDataI18n[$langFolder]['page'][$pageId]['content'], $content);
}
}
@ -904,13 +902,14 @@ class common
* Retourne les permission de l'utilisateur connecté
* @param int $key Clé de la valeur du groupe
* @return string|null
*/
public function getPermission($key1, $key2 = null) {
*/
public function getPermission($key1, $key2 = null)
{
if (is_array($this->user) === false) {
return false;
} elseif ($key2 === null && array_key_exists($key1, $this->getData(['profil', $this->user['group']]))) {
return $this->getData(['profil', $this->user['group'], $key1]);
} elseif ($key2 && array_key_exists($key2, $this->getData(['profil', $this->user['group'], $key1]))) {
} elseif ($key2 && array_key_exists($key2, $this->getData(['profil', $this->user['group'], $key1]))) {
return $this->getData(['profil', $this->user['group'], $key1, $key2]);
} else {
return false;

View File

@ -50,26 +50,6 @@ class init extends common
'lastAutoUpdate' => 0,
'updateAvailable' => false
],
'locale' => [
'homePageId' => 'accueil',
'page302' => 'none',
'page403' => 'none',
'page404' => 'none',
'legalPageId' => 'none',
'searchPageId' => 'none',
'searchPageLabel' => 'Rechercher',
'sitemapPageLabel' => 'Plan du site',
'legalPageLabel' => 'Mentions légales',
'metaDescription' => 'Zwii est un CMS sans base de données qui permet de créer et gérer facilement un site web sans aucune connaissance en programmation.',
'title' => 'Votre site en quelques clics !',
'cookies' => [
'mainLabel' => 'Ce site utilise des cookies nécessaires à son fonctionnement, ils permettent de fluidifier son fonctionnement par exemple en mémorisant les données de connexion, la langue que vous avez choisie ou la validation de ce message.',
'titleLabel' => 'Cookies essentiels',
'linkLegalLabel' => 'Consulter les mentions légales',
'cookiesFooterText' => 'Cookies',
'buttonValidLabel' => 'J\'ai compris'
]
],
'font' => [
'files' => [],
'imported' => [
@ -175,37 +155,6 @@ class init extends common
]
]
],
'page' => [
'accueil' => [
'typeMenu' => 'text',
'iconUrl' => '',
'disable' => false,
'content' => 'accueil.html',
'hideTitle' => false,
'homePageId' => true,
'breadCrumb' => false,
'metaDescription' => '',
'metaTitle' => '',
'moduleId' => '',
'modulePosition' => 'bottom',
'parentPageId' => '',
'position' => 1,
'group' => self::GROUP_VISITOR,
'targetBlank' => false,
'title' => 'Accueil',
'shortTitle' => 'Accueil',
'block' => '12',
'barLeft' => '',
'barRight' => '',
'displayMenu' => 'none',
'hideMenuSide' => false,
'hideMenuChildren' => false,
'extraPosition' => false,
'css' => '',
'js' => ''
]
],
'module' => [],
'user' => [],
'theme' => [
'body' => [
@ -478,6 +427,59 @@ class init extends common
]
];
public static $defaultDataI18n = [
'fr' => [
'locale' => [
'homePageId' => 'accueil',
'page302' => 'none',
'page403' => 'none',
'page404' => 'none',
'legalPageId' => 'none',
'searchPageId' => 'none',
'searchPageLabel' => 'Rechercher',
'sitemapPageLabel' => 'Plan du site',
'legalPageLabel' => 'Mentions légales',
'metaDescription' => 'Zwii est un CMS sans base de données qui permet de créer et gérer facilement un site web sans aucune connaissance en programmation.',
'title' => 'Votre site en quelques clics !',
'cookies' => [
'mainLabel' => 'Ce site utilise des cookies nécessaires à son fonctionnement, ils permettent de fluidifier son fonctionnement par exemple en mémorisant les données de connexion, la langue que vous avez choisie ou la validation de ce message.',
'titleLabel' => 'Cookies essentiels',
'linkLegalLabel' => 'Consulter les mentions légales',
'cookiesFooterText' => 'Cookies',
'buttonValidLabel' => 'J\'ai compris'
]
],
'page' => [
'accueil' => [
'typeMenu' => 'text',
'iconUrl' => '',
'disable' => false,
'content' => 'accueil.html',
'hideTitle' => false,
'homePageId' => true,
'breadCrumb' => false,
'metaDescription' => '',
'metaTitle' => '',
'moduleId' => '',
'modulePosition' => 'bottom',
'parentPageId' => '',
'position' => 1,
'group' => self::GROUP_VISITOR,
'targetBlank' => false,
'title' => 'Accueil',
'shortTitle' => 'Accueil',
'block' => '12',
'barLeft' => '',
'barRight' => '',
'displayMenu' => 'none',
'hideMenuSide' => false,
'hideMenuChildren' => false,
'extraPosition' => false,
'css' => '',
'js' => ''
]
],
'module' => [],
],
'es' => [
'locale' => [
'homePageId' => 'home',
@ -587,7 +589,7 @@ class init extends common
];
public static $siteData = [
public static $siteTemplate = [
'page' => [
'accueil' => [
'typeMenu' => 'text',