Module: KirguduBase::Models::Sorting::ClassMethods
- Defined in:
- app/helpers/kirgudu_base/models/sorting.rb
Instance Method Summary collapse
- #allowed_fields_to_sort ⇒ Object
- #allowed_fields_to_sort=(value) ⇒ Object
- #default_sort_field ⇒ Object
- #default_sort_field=(value) ⇒ Object
- #invert_sort_order(sort_order = nil) ⇒ Object
- #sanitize_sort_order(sort_order = nil) ⇒ Object
Instance Method Details
#allowed_fields_to_sort ⇒ Object
26 27 28 29 30 31 |
# File 'app/helpers/kirgudu_base/models/sorting.rb', line 26 def allowed_fields_to_sort unless defined?(@allowed_fields_to_sort) @allowed_fields_to_sort = [] end @allowed_fields_to_sort end |
#allowed_fields_to_sort=(value) ⇒ Object
33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'app/helpers/kirgudu_base/models/sorting.rb', line 33 def allowed_fields_to_sort= value @allowed_fields_to_sort = [] if value if value.is_a?(Array) value.each do |i| @allowed_fields_to_sort.push i.to_s end else @allowed_fields_to_sort.push value.to_s end end end |
#default_sort_field ⇒ Object
14 15 16 |
# File 'app/helpers/kirgudu_base/models/sorting.rb', line 14 def default_sort_field defined?(@default_sort_field) ? @default_sort_field : nil end |
#default_sort_field=(value) ⇒ Object
18 19 20 21 22 23 24 |
# File 'app/helpers/kirgudu_base/models/sorting.rb', line 18 def default_sort_field= value if value @default_sort_field = value.to_s else @default_sort_field = nil end end |
#invert_sort_order(sort_order = nil) ⇒ Object
53 54 55 56 57 58 59 60 61 62 63 |
# File 'app/helpers/kirgudu_base/models/sorting.rb', line 53 def invert_sort_order(sort_order = nil) sort_order ||= "" sort_order = sort_order.to_s return 'desc' if sort_order.empty? sort_order = sanitize_sortorder(sort_order) return 'desc' if sort_order == 'asc' 'asc' end |
#sanitize_sort_order(sort_order = nil) ⇒ Object
46 47 48 49 50 51 |
# File 'app/helpers/kirgudu_base/models/sorting.rb', line 46 def sanitize_sort_order(sort_order = nil) return 'asc' if sort_order.nil? || sort_order.empty? return 'asc' if sort_order.to_s.downcase == 'asc' return 'desc' if sort_order.to_s.downcase == 'desc' 'asc' end |