Module: Fae::Sortable::ClassMethods

Defined in:
app/models/concerns/fae/sortable.rb

Instance Method Summary collapse

Instance Method Details

#fae_sort(params) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
# File 'app/models/concerns/fae/sortable.rb', line 7

def fae_sort(params)
  return all unless params.present? && params[:sort_by].present?

  attr_parts = params[:sort_by].split('.')

  if attr_parts.length == 1
    order_by_model_attr(attr_parts.first, sort_direction(params[:sort_direction]))
  else
    order_by_association_attr(attr_parts.first.to_sym, attr_parts.second, sort_direction(params[:sort_direction]))
  end
end