Exemple #1
0
 protected function initLanguage()
 {
     $this->sOldSessionLanguage = Session::language();
     if (isset($_REQUEST[AdminManager::CONTENT_LANGUAGE_SESSION_KEY]) && LanguageQuery::languageExists($_REQUEST[AdminManager::CONTENT_LANGUAGE_SESSION_KEY])) {
         AdminManager::setContentLanguage($_REQUEST[AdminManager::CONTENT_LANGUAGE_SESSION_KEY]);
         unset($_REQUEST[AdminManager::CONTENT_LANGUAGE_SESSION_KEY]);
         LinkUtil::redirect(LinkUtil::link(Manager::getRequestedPath(), get_class()));
     } else {
         if (!LanguageQuery::languageExists(AdminManager::getContentLanguage())) {
             AdminManager::setContentLanguage($this->sOldSessionLanguage);
         }
         if (!LanguageQuery::languageExists(AdminManager::getContentLanguage())) {
             LinkUtil::redirectToManager('', "AdminManager");
         }
     }
     Session::getSession()->setLanguage(AdminManager::getContentLanguage());
 }
Exemple #2
0
 public static function setContentLanguage($sLanguageId)
 {
     if (!LanguageQuery::languageExists($sLanguageId)) {
         if (LanguageQuery::languageExists(Session::language())) {
             $sLanguageId = Session::language();
         } else {
             if (LanguageQuery::languageExists(Session::sessionDefaultFor(self::CONTENT_LANGUAGE_SESSION_KEY))) {
                 $sLanguageId = Session::sessionDefaultFor(self::CONTENT_LANGUAGE_SESSION_KEY);
             } else {
                 if (LanguageQuery::languageExists(Session::sessionDefaultFor(Session::SESSION_LANGUAGE_KEY))) {
                     $sLanguageId = Session::sessionDefaultFor(Session::SESSION_LANGUAGE_KEY);
                 } else {
                     // fallback @see method doc
                     self::createLanguageIfNoneExist($sLanguageId);
                     return;
                 }
             }
         }
     }
     // fallback @see method doc
     self::createLanguageIfNoneExist($sLanguageId);
     Session::getSession()->setAttribute(self::CONTENT_LANGUAGE_SESSION_KEY, $sLanguageId);
 }