diff --git a/core/core.php b/core/core.php index 8fb14fc2..ce7cdec2 100644 --- a/core/core.php +++ b/core/core.php @@ -345,10 +345,14 @@ class common } } - // Langue de l'administration - if ($this->getData(['user']) !== []) { + // Récupére un utilisateur connecté + if ($this->user === []) { + $this->user = $this->getData(['user', $this->getInput('ZWII_USER_ID')]); + } + // Langue de l'administration si le user est connecté + if ($this->getData(['user', $this->getUser('id'), 'language'])) { // Langue sélectionnée dans le compte, la langue du cookie sinon celle du compte ouvert - self::$i18nUI = $this->getData(['user', $this->getUser('id'), 'language']) ? $this->getData(['user', $this->getUser('id'), 'language']) : $_SESSION['ZWII_CONTENT']; + self::$i18nUI = $this->getData(['user', $this->getUser('id'), 'language']); // Validation de la langue self::$i18nUI = (empty(self::$i18nUI) || is_null(self::$i18nUI)) && !file_exists(self::I18N_DIR . self::$i18nUI . '.json') @@ -357,13 +361,17 @@ class common // Stocker le cookie de langue pour l'éditeur de texte setcookie('ZWII_UI', self::$i18nUI, time() + 3600, helper::baseUrl(false, false), '', false, false); } else { - // Installation - self::$i18nUI = isset($_SESSION['ZWII_UI']) ? $_SESSION['ZWII_UI'] : $_SESSION['ZWII_CONTENT']; - } - - // Utilisateur connecté - if ($this->user === []) { - $this->user = $this->getData(['user', $this->getInput('ZWII_USER_ID')]); + // Tenter de récupérer une valeur dans l'ordre session ZWII_UI, cookie zwii_UI, session ZWII_CONTENT + if (isset($_SESSION['ZWII_UI'])) { + self::$i18nUI = $_SESSION['ZWII_UI']; + } elseif ($this->getInput('ZWII_UI')) { + self::$i18nUI = $this->getInput('ZWII_UI'); + } elseif (isset($_SESSION['ZWII_CONTENT'])) { + self::$i18nUI = $_SESSION['ZWII_CONTENT']; + } else { + self::$i18nUI = 'fr_FR'; + } + $_SESSION['ZWII_UI'] = self::$i18nUI; } // Construit la liste des pages parents/enfants @@ -371,7 +379,6 @@ class common $this->buildHierarchy(); } - // Construit l'url if ($this->url === '') { if ($url = $_SERVER['QUERY_STRING']) {