Class: Ramaze::Helper::Localize::Parser
- Defined in:
- lib/ramaze/helper/localize.rb
Instance Attribute Summary collapse
-
#request ⇒ Object
Returns the value of attribute request.
Instance Method Summary collapse
-
#initialize(request) ⇒ Parser
constructor
A new instance of Parser.
- #locales(fallback = nil) ⇒ Object
- #parse ⇒ Object
- #parse_cookie(key = 'lang') ⇒ Object
- #parse_header ⇒ Object
- #parse_params(key = 'lang') ⇒ Object
- #parse_session(key = :lang) ⇒ Object
Constructor Details
#initialize(request) ⇒ Parser
Returns a new instance of Parser.
103 104 105 |
# File 'lib/ramaze/helper/localize.rb', line 103 def initialize(request) @request = request end |
Instance Attribute Details
#request ⇒ Object
Returns the value of attribute request.
101 102 103 |
# File 'lib/ramaze/helper/localize.rb', line 101 def request @request end |
Instance Method Details
#locales(fallback = nil) ⇒ Object
107 108 109 110 |
# File 'lib/ramaze/helper/localize.rb', line 107 def locales(fallback = nil) locales = [parse, fallback].flatten.uniq ::Locale::TagList.new(locales) end |
#parse ⇒ Object
112 113 114 |
# File 'lib/ramaze/helper/localize.rb', line 112 def parse parse_params || parse_session || || parse_header end |
#parse_cookie(key = 'lang') ⇒ Object
126 127 128 129 |
# File 'lib/ramaze/helper/localize.rb', line 126 def (key = 'lang') return unless lang = request.[key] ::Locale::Tag.parse(lang) end |
#parse_header ⇒ Object
131 132 133 134 |
# File 'lib/ramaze/helper/localize.rb', line 131 def parse_header request.accept_language.map{|lang| ::Locale::Tag.parse(lang) } end |
#parse_params(key = 'lang') ⇒ Object
116 117 118 119 |
# File 'lib/ramaze/helper/localize.rb', line 116 def parse_params(key = 'lang') return unless lang = request.params[key] ::Locale::Tag.parse(lang) end |