public function load() { if (isset($_GET['path'])) { if (array_key_exists($_GET['path'], Config::getPageList())) { $this->pageId = $_GET['path']; } else { $this->pageId = 'not_found'; } } if (isset($_GET['lang'])) { if (array_key_exists($_GET['lang'], Config::getLanguageList())) { $this->language = $_GET['lang']; } } else { if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) { $langs = explode(',', $_SERVER['HTTP_ACCEPT_LANGUAGE']); $nblang = count($langs); for ($i = 0; $i < $nblang; $i++) { if (array_key_exists($langs[$i], Config::getLanguageList())) { $this->language = $langs[$i]; break; } } } } LanguageManager::loadLocales($this->language); $pageList = Config::getPageList(); require_once $_SERVER["DOCUMENT_ROOT"] . '/page/' . $pageList[$this->pageId]['path'] . '.php'; $this->page = new CurrentPage(); }
static function loadLocales($lang) { bindtextdomain("perroquet-website", dirname($_SERVER['SCRIPT_FILENAME']) . '/locales'); bind_textdomain_codeset("perroquet-website", 'UTF-8'); textdomain("perroquet-website"); $languageList = Config::getLanguageList(); if (!$languageList[$lang]['choosable']) { $lang = $languageList[$lang]['ref']; } setlocale(LC_ALL, $languageList[$lang]['key']); LanguageManager::$lang = $lang; }
function generateContent() { $content = ' <h1>' . _('Select language') . '</h1>'; if ($this->language == "None") { $content .= ' <p>' . _('No language selected.') . '</p>'; } else { if ($this->language == "Invalid") { $content .= ' <p>' . _('Invalid language selected.') . '</p>'; } else { $langList = Config::getLanguageList(); $content .= ' <p>' . sprintf('Language \'%s\' selected.', $langList[$this->language]['label']) . '</p>'; } } $content .= ' <p><a href="' . RessourceManager::getInnerUrl('index') . '">' . _('Return to index') . '</a></p>'; return $content; }