Merge remote-tracking branch '681/681-fix'

This commit is contained in:
Ozzieisaacs 2018-11-25 07:19:00 +01:00
commit b78130e3b1

View File

@ -196,13 +196,8 @@ def get_locale():
if user is not None and hasattr(user, "locale"): if user is not None and hasattr(user, "locale"):
if user.nickname != 'Guest': # if the account is the guest account bypass the config lang settings if user.nickname != 'Guest': # if the account is the guest account bypass the config lang settings
return user.locale return user.locale
translations = [item.language for item in babel.list_translations()] + ['en'] translations = [str(item) for item in babel.list_translations()] + ['en']
preferred = [x.replace('-', '_') for x in request.accept_languages.values()] preferred = [str(LC.parse(x.replace('-','_'))) for x in request.accept_languages.values()]
# In the case of Simplified Chinese, Accept-Language is "zh-CN", while our translation of Simplified Chinese is "zh_Hans_CN".
# TODO: This is Not a good solution, should be improved.
if "zh_CN" in preferred:
return "zh_Hans_CN"
return negotiate_locale(preferred, translations) return negotiate_locale(preferred, translations)