/** * Retrouve la langue de l'utilisateur. * * @return string */ protected function getDefaultLang() { $sLang = ''; if (isset($_COOKIE[$this->sCookieLangName])) { $sLang = $_COOKIE[$this->sCookieLangName]; } elseif (($acceptLanguage = http::getAcceptLanguage()) != '') { $sLang = $acceptLanguage; } if ($this->okt->languages->isActive($sLang)) { return $sLang; } else { return $this->okt->config->language; } }
# This file is part of Dotclear 2. # # Copyright (c) 2003-2013 Olivier Meunier & Association Dotclear # Licensed under the GPL version 2.0 license. # See LICENSE file or # http://www.gnu.org/licenses/old-licenses/gpl-2.0.html # # -- END LICENSE BLOCK ----------------------------------------- require dirname(__FILE__) . '/../inc/admin/prepend.php'; # If we have a session cookie, go to index.php if (isset($_SESSION['sess_user_id'])) { $core->adminurl->redirect('admin.home'); } # Loading locales for detected language # That's a tricky hack but it works ;) $dlang = http::getAcceptLanguage(); $dlang = $dlang == '' ? 'en' : $dlang; if ($dlang != 'en' && preg_match('/^[a-z]{2}(-[a-z]{2})?$/', $dlang)) { l10n::lang($dlang); l10n::set(dirname(__FILE__) . '/../locales/' . $dlang . '/main'); } $page_url = http::getHost() . $_SERVER['REQUEST_URI']; $change_pwd = $core->auth->allowPassChange() && isset($_POST['new_pwd']) && isset($_POST['new_pwd_c']) && isset($_POST['login_data']); $login_data = !empty($_POST['login_data']) ? html::escapeHTML($_POST['login_data']) : null; $recover = $core->auth->allowPassChange() && !empty($_REQUEST['recover']); $safe_mode = !empty($_REQUEST['safe_mode']); $akey = $core->auth->allowPassChange() && !empty($_GET['akey']) ? $_GET['akey'] : null; $user_id = $user_pwd = $user_key = $user_email = null; $err = $msg = null; # Auto upgrade if (empty($_GET) && empty($_POST)) {
} # start sessions... - ah bon ? - hé oui ! - ah ah ! if (!session_id()) { session_start(); } # Install or update ? if (!isset($_SESSION['okt_install_process_type'])) { $_SESSION['okt_install_process_type'] = 'install'; if (file_exists(OKT_CONFIG_PATH . '/connexion.php')) { $_SESSION['okt_install_process_type'] = 'update'; } } $sOldVersion = !empty($_REQUEST['old_version']) ? trim($_REQUEST['old_version']) : null; # Initialisation localisation if (!isset($_SESSION['okt_install_language'])) { $sAcceptLanguage = http::getAcceptLanguage(); if (in_array($sAcceptLanguage, $aAvailablesLocales) && $sAcceptLanguage != $sDefaultLanguage) { $_SESSION['okt_install_language'] = $sAcceptLanguage; } else { $_SESSION['okt_install_language'] = $sDefaultLanguage; } http::redirect('index.php'); } if (isset($_REQUEST['switch_language']) && in_array($_REQUEST['switch_language'], $aAvailablesLocales)) { $_SESSION['okt_install_language'] = $_REQUEST['switch_language']; http::redirect('index.php'); } # load locales l10n::init(); l10n::set(OKT_LOCALES_PATH . '/' . $_SESSION['okt_install_language'] . '/main'); l10n::set(OKT_INSTAL_DIR . '/inc/locales/' . $_SESSION['okt_install_language'] . '/install');