12308 Déplacement test 404 langue non sélectionnée

This commit is contained in:
Fred Tempez 2023-04-12 15:02:35 +02:00
parent fb97570b96
commit 52f25fe231
2 changed files with 19 additions and 18 deletions

View File

@ -513,6 +513,24 @@ class core extends common
header('Location:' . helper::baseUrl() . 'maintenance');
exit();
}
// Pour éviter une 404 sur une langue étrangère, bascule dans la langue correcte.
if (is_null($this->getData(['page', $this->getUrl(0)]))) {
foreach (self::$languages as $key => $value) {
if (is_dir(self::DATA_DIR . $key) &&
file_exists(self::DATA_DIR . $key . '/page.json')) {
$pagesId = json_decode(file_get_contents(self::DATA_DIR . $key . '/page.json'), true);
if (array_key_exists($this->getUrl(0), $pagesId['page'])) {
setcookie('ZWII_CONTENT', $key, time() + 3600, helper::baseUrl(false, false), '', true, helper::isHttps());
self::$i18nContent = $key;
\setlocale(LC_ALL, self::$i18nContent . '.UTF8');
header('Refresh:0; url=' . helper::baseUrl() . $this->getUrl(0));
exit();
}
}
}
}
// Check l'accès à la page
$access = null;
if ($this->getData(['page', $this->getUrl(0)]) !== null) {

View File

@ -53,7 +53,7 @@ class common
const ACCESS_TIMER = 1800;
// Numéro de version et branche pour l'auto-update
const ZWII_VERSION = '12.3.07';
const ZWII_VERSION = '12.3.08';
const ZWII_DATAVERSION = 12301;
@ -384,23 +384,6 @@ class common
}
}
// Pour éviter une 404 sur une langue étrangère, bascule dans la langue correcte.
if (is_null($this->getData(['page', $this->getUrl(0)]))) {
foreach (self::$languages as $key => $value) {
if (is_dir(self::DATA_DIR . $key) &&
file_exists(self::DATA_DIR . $key . '/page.json')) {
$pagesId = json_decode(file_get_contents(self::DATA_DIR . $key . '/page.json'), true);
if (array_key_exists($this->getUrl(0), $pagesId['page'])) {
setcookie('ZWII_CONTENT', $key, time() + 3600, helper::baseUrl(false, false), '', true, helper::isHttps());
self::$i18nContent = $key;
\setlocale(LC_ALL, self::$i18nContent . '.UTF8');
header('Refresh:0; url=' . helper::baseUrl() . $this->getUrl(0));
exit();
}
}
}
}
// Chargement des dialogues
if (!file_exists(self::I18N_DIR . self::$i18nUI . '.json')) {
// Copie des fichiers de langue par défaut fr_FR si pas initialisé