Class: RademadeAdmin::SortableService
- Inherits:
-
Object
- Object
- RademadeAdmin::SortableService
- Defined in:
- app/services/sortable_service.rb
Instance Method Summary collapse
- #can_reset? ⇒ Boolean
- #has_position? ⇒ Boolean
-
#initialize(model_info, params) ⇒ SortableService
constructor
A new instance of SortableService.
- #re_sort_items ⇒ Object
- #sorting_sign(name) ⇒ Object
Constructor Details
#initialize(model_info, params) ⇒ SortableService
4 5 6 7 |
# File 'app/services/sortable_service.rb', line 4 def initialize(model_info, params) @model_info = model_info @params = params end |
Instance Method Details
#can_reset? ⇒ Boolean
18 19 20 |
# File 'app/services/sortable_service.rb', line 18 def can_reset? @params[:sort].present? end |
#has_position? ⇒ Boolean
34 35 36 |
# File 'app/services/sortable_service.rb', line 34 def has_position? @model_info.has_field? 'position' end |
#re_sort_items ⇒ Object
9 10 11 12 13 14 15 16 |
# File 'app/services/sortable_service.rb', line 9 def re_sort_items min = @params[:minimum].to_i @params[:sorted].each do |k, v| item = @model_info.model.find(v[0]) item.position = k.to_i + 1 + min item.save end end |
#sorting_sign(name) ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 |
# File 'app/services/sortable_service.rb', line 22 def sorting_sign(name) if name.to_s == @params[:sort] case @params[:direction] when 'asc' return '⬇' when 'desc' return '⬆' end end '' end |