class Mincer::Processors::Pagination::Processor

Public Class Methods

kaminari?() click to toggle source
# File lib/mincer/processors/pagination/processor.rb, line 20
def self.kaminari?
  defined?(::Kaminari)
end
new(mincer) click to toggle source
# File lib/mincer/processors/pagination/processor.rb, line 5
def initialize(mincer)
  @mincer, @args, @relation = mincer, mincer.args, mincer.relation
end
will_paginate?() click to toggle source
# File lib/mincer/processors/pagination/processor.rb, line 24
def self.will_paginate?
  defined?(::WillPaginate)
end

Public Instance Methods

apply() click to toggle source
# File lib/mincer/processors/pagination/processor.rb, line 9
def apply
  if self.class.kaminari?
    @relation.page(page).per(per_page)
  elsif self.class.will_paginate?
    @relation.paginate(page: page, per_page: per_page)
  else
    warn 'To enable pagination please add kaminari or will_paginate to your Gemfile'
    @relation
  end
end
page() click to toggle source
# File lib/mincer/processors/pagination/processor.rb, line 28
def page
  @args[::Mincer.config.pagination.page_param_name]
end
per_page() click to toggle source
# File lib/mincer/processors/pagination/processor.rb, line 32
def per_page
  @mincer.class.default_per_page || @args[::Mincer.config.pagination.per_page_param_name]
end