Module: WorldFlags

Defined in:
lib/world-flags.rb,
lib/world_flags/countries.rb,
lib/world_flags/languages.rb,
lib/world_flags/view_helper.rb,
lib/world_flags/rails/engine.rb,
lib/world_flags/locale_helper.rb

Defined Under Namespace

Modules: All, Browser, Countries, Geo, Languages, Locale, Rails, ViewHelper

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.auto_selectObject

Returns the value of attribute auto_select.



10
11
12
# File 'lib/world-flags.rb', line 10

def auto_select
  @auto_select
end

.locale_flag_mapObject

translate locales to flag code: ISO_3166-1_alpha-2



36
37
38
# File 'lib/world-flags.rb', line 36

def locale_flag_map
  @locale_flag_map
end

Class Method Details

.auto_select!Object



16
17
18
# File 'lib/world-flags.rb', line 16

def auto_select!
	@auto_select = true
end

.auto_select?Boolean

Returns:

  • (Boolean)


12
13
14
# File 'lib/world-flags.rb', line 12

def auto_select?
	auto_select
end

.countriesObject



71
72
73
# File 'lib/world-flags.rb', line 71

def countries
	@countries ||= {:en => Countries.en}
end

.countries=(countries) ⇒ Object

Raises:

  • (ArgumentError)


66
67
68
69
# File 'lib/world-flags.rb', line 66

def countries= countries
	raise ArgumentError, "Must be a hash, was: #{countries}" unless countries.kind_of?(Hash)
	@countries = countries
end

.country(locale = :en, code = :en) ⇒ Object

Country helper macros



61
62
63
64
# File 'lib/world-flags.rb', line 61

def country locale = :en, code = :en
	locale ||= :en
	countries[locale][code]
end

.flag_code(code) ⇒ Object

Locale translation helper macros



29
30
31
# File 'lib/world-flags.rb', line 29

def flag_code code
	locale_flag_map[code.to_sym] || code
end

.label(code = :en, options = {:language => :en}) ⇒ Object



20
21
22
23
24
25
# File 'lib/world-flags.rb', line 20

def label code = :en, options = {:language => :en}			
	label = options[:country] ? WorldFlags.country(options[:country], code) : WorldFlags.language(options[:language], code)
	# if all else fails
	default_locale = I18n.locale || :en
	label ||= WorldFlags.language(default_locale, code)
end

.language(locale = :en, code = :en) ⇒ Object

Language helper macros



45
46
47
48
# File 'lib/world-flags.rb', line 45

def language locale = :en, code = :en
	locale ||= :en
	languages[locale][code]
end

.languagesObject



55
56
57
# File 'lib/world-flags.rb', line 55

def languages
	@languages ||= {:en => Languages.en}
end

.languages=(languages) ⇒ Object

Raises:

  • (ArgumentError)


50
51
52
53
# File 'lib/world-flags.rb', line 50

def languages= languages
	raise ArgumentError, "Must be a hash, was: #{languages}" unless languages.kind_of?(Hash)
	@languages = languages
end