def Language.from_locale
return 'english' unless defined?(GetText)
lang = locale.language
if locale.country
str = lang + "_#{locale.country}"
if Lang2Locale.value?(str)
lang_str = Lang2Locale.select { |k, v| v == str }.transpose.first.map { |v| v.to_s }.sort { |a, b| a.length <=> b.length }.first
if File.exist?(File.join(Config::datadir, "languages/#{lang_str}.lang"))
return lang_str
end
end
end
if Lang2Locale.value?(lang)
lang_str = Lang2Locale.select { |k, v| v == lang }.transpose.first.map { |v| v.to_s }.sort { |a, b| a.length <=> b.length }.first
if File.exist?(File.join(Config::datadir, "/languages/#{lang_str}.lang"))
return lang_str
end
end
return 'english'
end