Class: AlphabeticalPaginate::Language
- Inherits:
-
Object
- Object
- AlphabeticalPaginate::Language
- Defined in:
- lib/alphabetical_paginate/language.rb
Constant Summary collapse
- APPROXIMATIONS =
{ "Э" => "je", "Ю" => "yu" }
Instance Attribute Summary collapse
-
#code ⇒ Object
readonly
Returns the value of attribute code.
Instance Method Summary collapse
-
#all_field ⇒ Object
used in view_helper.
- #default_letter ⇒ Object
-
#initialize(code) ⇒ Language
constructor
A new instance of Language.
-
#letters_range ⇒ Object
used in view_helper.
- #letters_regexp ⇒ Object
-
#output_letter(l) ⇒ Object
used in view_helper.
- #russian? ⇒ Boolean
- #slugged_letters ⇒ Object
- #slugged_regexp ⇒ Object
Constructor Details
#initialize(code) ⇒ Language
11 12 13 |
# File 'lib/alphabetical_paginate/language.rb', line 11 def initialize(code) @code = code end |
Instance Attribute Details
#code ⇒ Object (readonly)
Returns the value of attribute code.
9 10 11 |
# File 'lib/alphabetical_paginate/language.rb', line 9 def code @code end |
Instance Method Details
#all_field ⇒ Object
used in view_helper
52 53 54 |
# File 'lib/alphabetical_paginate/language.rb', line 52 def all_field russian? ? 'Все' : "All" end |
#default_letter ⇒ Object
27 28 29 |
# File 'lib/alphabetical_paginate/language.rb', line 27 def default_letter russian? ? "а" : "a" # First 'a' is russian, second - english end |
#letters_range ⇒ Object
used in view_helper
32 33 34 35 36 37 38 |
# File 'lib/alphabetical_paginate/language.rb', line 32 def letters_range if russian? ["А","Б","В","Г","Д","Е","Ж","З","И","К","Л","М","Н","О","П","Р","С","Т","У","Ф","Х","Ц","Ч","Ш","Э","Ю","Я"] else ["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"] end end |
#letters_regexp ⇒ Object
19 20 21 |
# File 'lib/alphabetical_paginate/language.rb', line 19 def letters_regexp russian? ? /[а-яА-Я]/ : /[a-zA-Z]/ end |
#output_letter(l) ⇒ Object
used in view_helper
47 48 49 |
# File 'lib/alphabetical_paginate/language.rb', line 47 def output_letter(l) (l == "All") ? all_field : l end |
#russian? ⇒ Boolean
15 16 17 |
# File 'lib/alphabetical_paginate/language.rb', line 15 def russian? defined?(I18n) && I18n.locale == :ru && code == :ru end |
#slugged_letters ⇒ Object
40 41 42 43 44 |
# File 'lib/alphabetical_paginate/language.rb', line 40 def slugged_letters hash = { "All" => "all" } letters_range.each{ |x| hash[x] = normalize(x) } hash end |
#slugged_regexp ⇒ Object
23 24 25 |
# File 'lib/alphabetical_paginate/language.rb', line 23 def slugged_regexp /^(#{slugged_letters.values.join("|")})$/ end |