Fixed support for incomplete translations (fallback to default language for missing strings)

This commit is contained in:
Côme Chilliet 2017-08-10 16:31:00 +02:00
parent 044aa1d8eb
commit 47f01b3f6f

View file

@ -30,7 +30,7 @@ end
-- Get the index of a value in a table -- Get the index of a value in a table
function index_of(t,val) function index_of(t,val)
for k,v in ipairs(t) do for k,v in ipairs(t) do
if v == val then return k end if v == val then return k end
end end
end end
@ -50,8 +50,8 @@ end
-- Find a string by its translate key in the right language -- Find a string by its translate key in the right language
function t(key) function t(key)
if conf.lang and i18n[conf.lang] then if conf.lang and i18n[conf.lang] and i18n[conf.lang][key] then
return i18n[conf.lang][key] or "" return i18n[conf.lang][key]
else else
return i18n[conf["default_language"]][key] or "" return i18n[conf["default_language"]][key] or ""
end end
@ -147,7 +147,7 @@ function set_auth_cookie(user, domain)
"; Path=/".. "; Path=/"..
"; Expires="..os.date("%a, %d %b %Y %X UTC;", expire).. "; Expires="..os.date("%a, %d %b %Y %X UTC;", expire)..
"; Secure" "; Secure"
ngx.header["Set-Cookie"] = { ngx.header["Set-Cookie"] = {
"SSOwAuthUser="..user..cookie_str, "SSOwAuthUser="..user..cookie_str,
"SSOwAuthHash="..hash..cookie_str, "SSOwAuthHash="..hash..cookie_str,
@ -556,13 +556,8 @@ function get_data_for(view)
end end
-- Pass all the translated strings to the view (to use with t_<key>) -- Pass all the translated strings to the view (to use with t_<key>)
if conf.lang and i18n[conf.lang] then for k, v in pairs(i18n[conf["default_language"]]) do
translate_table = i18n[conf.lang] data["t_"..k] = i18n[conf.lang][k] or v
else
translate_table = i18n[conf["default_language"]]
end
for k, v in pairs(translate_table) do
data["t_"..k] = v
end end
-- Pass flash notification content -- Pass flash notification content