module WorldFlags::Util::Country
Attributes
countries_map[W]
hashied_countries[W]
Public Instance Methods
countries()
click to toggle source
# File lib/world_flags/util/country.rb, line 35 def countries @countries ||= Countries.new end
countries=(countries)
click to toggle source
# File lib/world_flags/util/country.rb, line 30 def countries= countries raise ArgumentError, "Must be a hash, was: #{countries}" unless !countries || countries.kind_of?(Hash) @countries = countries end
countries_map()
click to toggle source
# File lib/world_flags/util/country.rb, line 39 def countries_map @countries_map ||= begin available_locales.inject({}) do |res, loc| res[loc] = find_country_map(loc) res end end end
country(code = :us, locale = :en)
click to toggle source
# File lib/world_flags/util/country.rb, line 14 def country code = :us, locale = :en locale ||= default_locale_used locale = WorldFlags.locale(locale).to_sym locale_countries_map = countries_map[locale] || countries_map[default_locale_used] locale_countries_map = countries_map[:en] if locale_countries_map.blank? raise "No country-locale map defined for locale: #{locale} or :en in #{countries.inspect}" if locale_countries_map.blank? # raise("No country map defined for country code: #{code} in #{locale_countries_map[code]}") locale_countries_map[code] ? locale_countries_map[code] : locale_countries_map[default_code_used] rescue Exception => e raise e if WorldFlags.raise_error? "Undefined" end
country_label(code, locale)
click to toggle source
# File lib/world_flags/util/country.rb, line 10 def country_label code, locale WorldFlags.country code, locale end
find_country_map(loc)
click to toggle source
# File lib/world_flags/util/country.rb, line 59 def find_country_map loc hashied_countries.respond_to?(loc) ? hashied_countries.send(loc) : hashied_countries.send(locale loc) rescue hashied_countries.send(default_locale_used) end
hashied_countries()
click to toggle source
# File lib/world_flags/util/country.rb, line 48 def hashied_countries @hashied_countries ||= begin case countries when Hash Hashie::Mash.new countries else countries end end end