소스 검색

Fix initI18n (#3249)

* Fix initI18n

#fix
https://github.com/FreshRSS/FreshRSS/issues/3246#issuecomment-725463337
#fix https://github.com/FreshRSS/FreshRSS/issues/3136

It was due to calling `initI18n()` before `FreshRSS_Context` is
intialised in some situations

Introduced by https://github.com/FreshRSS/FreshRSS/pull/3022
Will be better fixed when https://github.com/FreshRSS/FreshRSS/pull/3070
lands

* Fallback condition
Alexandre Alapetite 5 년 전
부모
커밋
8dad63de02
2개의 변경된 파일4개의 추가작업 그리고 3개의 파일을 삭제
  1. 3 2
      app/FreshRSS.php
  2. 1 1
      lib/Minz/Translate.php

+ 3 - 2
app/FreshRSS.php

@@ -90,8 +90,9 @@ class FreshRSS extends Minz_FrontController {
 	}
 
 	private static function initI18n() {
-		$selected_language = FreshRSS_Auth::hasAccess() ? FreshRSS_Context::$user_conf->language : null;
-		$language = Minz_Translate::getLanguage($selected_language, Minz_Request::getPreferredLanguages(), FreshRSS_Context::$system_conf->language);
+		$userLanguage = isset(FreshRSS_Context::$user_conf) ? FreshRSS_Context::$user_conf->language : null;
+		$systemLanguage = isset(FreshRSS_Context::$system_conf) ? FreshRSS_Context::$system_conf->language : null;
+		$language = Minz_Translate::getLanguage($userLanguage, Minz_Request::getPreferredLanguages(), $systemLanguage);
 
 		Minz_Session::_param('language', $language);
 		Minz_Translate::init($language);

+ 1 - 1
lib/Minz/Translate.php

@@ -103,7 +103,7 @@ class Minz_Translate {
 			}
 		}
 
-		return $default;
+		return $default ? $default : 'en';
 	}
 
 	/**