Module: Lipstick::Sortable::ClassMethods
- Defined in:
- lib/lipstick/sortable.rb
Instance Attribute Summary collapse
-
#sortable_by_cases ⇒ Object
readonly
Returns the value of attribute sortable_by_cases.
-
#sortable_by_else ⇒ Object
readonly
Returns the value of attribute sortable_by_else.
Instance Method Summary collapse
Instance Attribute Details
#sortable_by_cases ⇒ Object (readonly)
Returns the value of attribute sortable_by_cases.
21 22 23 |
# File 'lib/lipstick/sortable.rb', line 21 def sortable_by_cases @sortable_by_cases end |
#sortable_by_else ⇒ Object (readonly)
Returns the value of attribute sortable_by_else.
21 22 23 |
# File 'lib/lipstick/sortable.rb', line 21 def sortable_by_else @sortable_by_else end |
Instance Method Details
#sortable_by(sort_cases, sort_else) ⇒ Object
23 24 25 26 |
# File 'lib/lipstick/sortable.rb', line 23 def sortable_by(sort_cases, sort_else) @sortable_by_cases = sort_cases @sortable_by_else = sort_else end |
#sortable_sort(sort_by, direction) ⇒ Object
28 29 30 31 32 33 34 35 36 37 |
# File 'lib/lipstick/sortable.rb', line 28 def sortable_sort(sort_by, direction) sort_by = sort_by&.to_sym direction = Lipstick::Sortable.direction(direction) if sort_by && sortable_by_cases.key?(sort_by) sortable_by_cases[sort_by].call(direction) else sortable_by_else.call(direction) end end |