module WorldFlags::Helper::View::Util
Public Class Methods
flag_code(code)
click to toggle source
define more mappings by setting WorldFlags.locale_flag_map
to a Hash
map en.wikipedia.org/wiki/ISO_639-1_language_matrix
# File lib/world_flags/helper/view/util.rb, line 63 def self.flag_code code WorldFlags.flag_code code end
flag_options(code, title, name, options = {})
click to toggle source
# File lib/world_flags/helper/view/util.rb, line 27 def self.flag_options code, title, name, options = {} locale = I18n.locale extra_options = title ? {:title => title } : {} selected = flag_selected?(code, options) ? ' selected' : '' # add semi class if not selected semi = (selected.blank? ? ' semi' : '') if options[:with_semi] xclass = options[:class] ? " #{options[:class]}" : '' if WorldFlags.country_name_enabled? country_name = WorldFlags.country(code, locale) end country_option = country_name ? {:'data-country_name' => country_name} : {} if WorldFlags.language_name_enabled? language_name = WorldFlags.language(code, locale) end language_option = language_name ? {:'data-language_name' => language_name} : {} flag_locale = WorldFlags.locale(code) {:class => "flag #{code}#{selected}#{semi}#{xclass}", :'data-cc' => code, :'data-locale' => flag_locale}.merge(options[:html] || {}).merge(extra_options).merge(country_option).merge(language_option) end
flag_selected?(code, options = {})
click to toggle source
# File lib/world_flags/helper/view/util.rb, line 51 def self.flag_selected? code, options = {} code = code.to_sym sel = options[:selected] || options[code] auto_sel = flag_code(I18n.locale).to_sym if WorldFlags.auto_select? match_locales = [sel, auto_sel] selected ||= match_locales.any?{|e| e == code } end
label_for(options = {})
click to toggle source
# File lib/world_flags/helper/view/util.rb, line 5 def self.label_for options = {} label = case options[:content] when true name when String options[:content] else WorldFlags.flag_text end end
title_for(name, options = {})
click to toggle source
# File lib/world_flags/helper/view/util.rb, line 16 def self.title_for name, options = {} case options[:title] when true name when String options[:title] else nil end end