Sha256: 3636920d04a383567f91c38f1663252adebd82a2bf772bf3b33a803e0bb961e0

Contents?: true

Size: 692 Bytes

Versions: 35

Compression:

Stored size: 692 Bytes

Contents

module Enjoy::SortField
  extend ActiveSupport::Concern

  module ClassMethods
    def sort_field(prefix = '')
      prefix = "#{prefix}_" unless prefix == ''

      if Enjoy.mongoid?
        field "#{prefix}order".to_sym, type: Integer
        alias_method "#{prefix}sort", "#{prefix}order"
        scope "#{prefix}ordered".to_sym,  -> { asc("#{prefix}order".to_sym) }
        scope "#{prefix}sorted".to_sym,   -> { asc("#{prefix}order".to_sym) }
      end
      if Enjoy.active_record?
        scope "#{prefix}ordered".to_sym,  -> { order("#{prefix}order".to_sym => :asc) }
        scope "#{prefix}sorted".to_sym,   -> { order("#{prefix}order".to_sym => :asc) }
      end
    end
  end
end

Version data entries

35 entries across 35 versions & 1 rubygems

Version Path
enjoy_cms-0.4.1 app/models/concerns/enjoy/sort_field.rb
enjoy_cms-0.4.0.5 app/models/concerns/enjoy/sort_field.rb
enjoy_cms-0.4.0.4 app/models/concerns/enjoy/sort_field.rb
enjoy_cms-0.4.0.3 app/models/concerns/enjoy/sort_field.rb
enjoy_cms-0.4.0.2 app/models/concerns/enjoy/sort_field.rb
enjoy_cms-0.4.0.1 app/models/concerns/enjoy/sort_field.rb
enjoy_cms-0.4.0 app/models/concerns/enjoy/sort_field.rb
enjoy_cms-0.4.0.beta3 app/models/concerns/enjoy/sort_field.rb
enjoy_cms-0.3.7.4 app/models/concerns/enjoy/sort_field.rb
enjoy_cms-0.3.7.3 app/models/concerns/enjoy/sort_field.rb
enjoy_cms-0.3.7.2 app/models/concerns/enjoy/sort_field.rb
enjoy_cms-0.3.7.1 app/models/concerns/enjoy/sort_field.rb
enjoy_cms-0.3.7 app/models/concerns/enjoy/sort_field.rb
enjoy_cms-0.3.6.2 app/models/concerns/enjoy/sort_field.rb
enjoy_cms-0.3.6.1 app/models/concerns/enjoy/sort_field.rb
enjoy_cms-0.3.6 app/models/concerns/enjoy/sort_field.rb
enjoy_cms-0.3.5 app/models/concerns/enjoy/sort_field.rb
enjoy_cms-0.3.4 app/models/concerns/enjoy/sort_field.rb
enjoy_cms-0.3.3 app/models/concerns/enjoy/sort_field.rb
enjoy_cms-0.3.2.1 app/models/concerns/enjoy/sort_field.rb