diff --git a/utils.lua b/utils.lua --- a/utils.lua +++ b/utils.lua @@ -4,12 +4,48 @@ --[[Translate utils]] -language = "ru" - -translate = function(table, key) - return function() - return table[language][key]; - end; +global { + language = 'ru' +} + +lang_map = { + ['ru'] = 'ru', + ['by'] = 'ru', + ['uk'] = 'ru' +} + +translate = function(table, key) + return function() + local lang = language + if lang == '' then + if lang_map[LANG] then + lang = lang_map[LANG]; + else + lang = 'en'; + end; + end; + if table[lang][key] ~= nil then + return table[lang][key]; + else + return key + end + end; +end; + +translate_now = function(table, key) + local lang = language + if lang == '' then + if lang_map[LANG] then + lang = lang_map[LANG]; + else + lang = 'en'; + end; + end; + if table[lang][key] ~= nil then + return table[lang][key]; + else + return key + end end; --[[