Merge branch '11000' into layout

This commit is contained in:
Fred Tempez 2021-06-18 21:20:27 +02:00
commit e9ab9027ba
6 changed files with 56 additions and 42 deletions

View File

@ -522,8 +522,8 @@ class common {
require_once('core/module/install/ressource/defaultdata.php');
// Stockage dans un sous-dossier localisé
if (!file_exists(self::DATA_DIR . '/' . $lang)) {
mkdir (self::DATA_DIR . '/' . $lang);
if (!file_exists(self::DATA_DIR . $lang)) {
mkdir (self::DATA_DIR .$lang);
}
$db = $this->dataFiles[$module];
if ($sampleSite === true) {

View File

@ -1,4 +1,4 @@
<h3>IMPORTER OU METTRE A JOUR</h3>
<h3>INSTALLER OU METTRE A JOUR</h3>
<p>Vous avez au préalable chargé le fichier zip du module sur votre serveur en utilisant le 'Catalogue en ligne', écran précédent.</p>
<p>D'autres modules sont également disponibles sur le <a href="https://forum.zwiicms.fr/categories/t%C3%A9l%C3%A9chargements-de-modules" target="_blank" rel="noopener">forum de ZwiiCMS</a>,
téléversez les sur votre serveur avec 'Gérer les fichiers'.</p>

View File

@ -94,19 +94,6 @@ class init extends common {
],
'module' => [],
'user' => [],
'i18n' => [
'scriptGoogle' => false,
'showCredits' => false,
'autoDetect' => false,
'admin' => false,
'fr' => 'none',
'de' => 'none',
'en' => 'none',
'es' => 'none',
'it' => 'none',
'nl' => 'none',
'pt' => 'none'
],
'theme' => [
'body' => [
'backgroundColor' => 'rgba(236, 239, 241, 1)',
@ -781,6 +768,16 @@ class init extends common {
]
]
]
],
'locale' => [
'homePageId' => 'accueil',
'page302' => 'none',
'page403' => 'none',
'page404' => 'none',
'legalPageId' => 'none',
'searchPageId' => 'none',
'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 !'
]
];

View File

@ -96,13 +96,14 @@ class translate extends common {
// Soumission du formulaire
if($this->isPost()) {
// Désactivation du script Google
if ($this->getInput('translateScriptGoogle', helper::FILTER_BOOLEAN) === false) {
$script = $this->getInput('translateScriptGoogle', helper::FILTER_BOOLEAN);
if ($script === false) {
setrawcookie('googtrans', '/fr/fr', time() + 3600, helper::baseUrl(false,false));
$_SESSION['googtrans'] = '/fr/fr';
}
$script = $this->getInput('translateScriptGoogle', helper::FILTER_BOOLEAN);
// Edition des langues
foreach (self::$i18nList as $keyi18n => $value) {
if ($keyi18n === 'fr') continue;
// Effacement d'une langue installée
if ( is_dir( self::DATA_DIR . $keyi18n ) === true
AND $this->getInput('translate' . strtoupper($keyi18n)) === 'delete')
@ -111,15 +112,14 @@ class translate extends common {
}
// Installation d'une langue
if ( $this->getInput('translate' . strtoupper($keyi18n)) === 'site'
// Pas d'initialisation si la langue existe déjà
AND is_dir(self::DATA_DIR . $keyi18n) === false )
{
// Pas d'initialisation si la langue existe déjà
if (!file_exists( self::DATA_DIR . $keyi18n . '/page.json'))
$this->initData('page', $keyi18n, false);
if (!file_exists( self::DATA_DIR . $keyi18n . '/module.json'))
$this->initData('module', $keyi18n, false);
if (!file_exists( self::DATA_DIR . $keyi18n . '/locale.json'))
$this->initData('locale', $keyi18n, false);
helper::deleteCookie('ZWII_I18N_SITE');
helper::deleteCookie('ZWII_I18N_SCRIPT');
setcookie('ZWII_I18N_SITE', $keyi18n, time() + 3600, helper::baseUrl(false, false) , '', helper::isHttps(), true);
}
// Active le script si une langue est en trad auto
if ($script === false
@ -127,6 +127,7 @@ class translate extends common {
$script = true;
}
}
// Enregistrement des données
$this->setData(['config','i18n', [
'active' => $this->getData(['config', 'i18n', 'active']),
@ -182,13 +183,13 @@ class translate extends common {
*/
public function language() {
// Activation du drapeau
// Activation du drapeau
if ( $this->getInput('ZWII_I18N_' . strtoupper($this->getUrl(3))) !== $this->getUrl(2) ) {
// Nettoyer et stocker le choix de l'utilisateur
helper::deleteCookie('ZWII_I18N_SITE');
helper::deleteCookie('ZWII_I18N_SCRIPT');
// Sélectionner
setcookie('ZWII_I18N_' . strtoupper($this->getUrl(3)) , $this->getUrl(2), time() + 3600, helper::baseUrl(false, false) , '', helper::isHttps(), true);
setcookie('ZWII_I18N_' . strtoupper($this->getUrl(3)) , $this->getUrl(2), time() + 3600, helper::baseUrl(false, false) , '', helper::isHttps(), true);
// Désactivation du drapeau, langue FR par défaut
} else {
setcookie('ZWII_I18N_SITE' , 'fr', time() + 3600, helper::baseUrl(false, false) , '', helper::isHttps(), true);

View File

@ -1 +1,27 @@
<h3>A VENIR</h3>
<h3>TRADUCTION AUTOMATIQUE</h3>
<p>Vous avez le choix entre une traduction automatique, réalisée avec le script Google Traduction, ou une traduction rédigée (voir MODE DE TRADUCTION).<br>
La traduction automatique est réalisée à partir du site en version française, elle offre deux possibilités :<br>
* la détection automatique de la langue du navigateur même si celle-ci n'est pas matérialisée par un drapeau,<br>
* la traduction automatique des pages suite à un clic sur un drapeau.
<br>
Ces 2 modes peuvent coexister, la langue detectée par le navigateur sera la langue par défaut pour l'affichage du site et si le visiteur clique sur un drapeau, par exemple italien, le site s'affichera en italien quelque soit les préférences du navigateur.
<br><br>
L'option 'Afficher les crédits du script Google' est recommandée pour respecter les droits d'auteur.
<br><br>
L'option 'Traduction en mode connecté' permet de traduire les pages d'administration du site.
</p>
<br>
<h3>MODE DE TRADUCTION ET AFFICHAGE DES DRAPEAUX</h3>
<p>Vous avez 4 options :<br>
=> Drapeau masqué : la traduction automatique ne sera possible que si vous avez choisi l'option 'Détection automatique de la langue du navigateur',<br>
=> Traduction automatique : le drapeau de la langue sélectionnée s'affiche dans le menu,<br>
=> Traduction rédigée : un nouveau site est généré, seule la page d'accueil est créée, il faut alors rédiger les pages dans la langue sélectionnée ou avant cela utiliser l'utilitaire de copie,<br>
=> Supprimer la traduction : la traduction rédigée va être supprimée, pensez à sauvegarder avant ( en configuration avancée ) !
<br><br>
Il est pratique d'afficher le drapeau français pour revenir à la langue originale, sinon cliquez sur le drapeau actif (icône large).
</p>
<br>
<h3>UTILITAIRE DE COPIE</h3>
<p>Quand une traduction rédigée est sélectionnée, il est possible de copier les pages et les modules d'une langue vers une autre à l'aide de l'utilitaire de copie. Il ne vous restera plus qu'à traduire ces pages.
</p>

View File

@ -9,7 +9,7 @@
]); ?>
</div>
<div class="col2">
<?php echo template::button('configAdvancedHelp', [
<?php echo template::button('translateAdvancedHelp', [
'class' => 'buttonHelp',
'ico' => 'help',
'value' => 'Aide'
@ -29,8 +29,8 @@
</div>
<!-- Aide à propos de la configuration du site, view advanced -->
<div class="helpDisplayContent">
<?php echo file_get_contents( 'core/module/config/view/advanced/advanced.help.html') ;?>
</div>
<?php echo file_get_contents( 'core/module/translate/view/index/index.help.html') ;?>
</div>
<div class="row">
<div class="col12">
<div class="block">
@ -136,14 +136,4 @@
</div>
</div>
</div>
<div class="col10 helpDisplayContent">
<p>Vous avez le choix entre une traduction automatique réalisée avec le script Google Traduction ou une traduction rédigée. La traduction automatique offre deux possibilités, la détection automatique de la langue du navigateur même celle-ci n'est pas
matérialisée par un drapeau. Le clic sur un drapeau forcera la traduction dans cette langue, pour cela sélectionnez le drapeau puis l'option de "Traduction automatique".
La traduction automatique est réalisée à partir du site en version française.</p>
<p>Avec l'option "Traduction rédigée", une nouveau sité est généré, seule la page d'accueil est crée, il faut alors rédiger les pages dans la langue sélectionnée.
Il est possible de copier les pages et les modules d'une langue vers une autre à l'aide de l'utilitaire de copie.
Quand un drapeau est masqué, la traduction est effacée, pensez à sauvegarder.
Afficher le drapeau français pour revenir à la traduction dans la langue originale.</p>
</div>
<?php echo template::formClose(); ?>
<?php echo template::formClose(); ?>