Module: Wor::Paginate::Config

Defined in:
lib/wor/paginate/config.rb

Constant Summary collapse

DEFAULTS_CONFIGS =
{
  default_per_page: 25,
  default_page: 1,
  page_param: :page,
  per_page_param: :limit,
  formatter: Wor::Paginate::Formatters::Base,
  max_limit: 50,
  default_adapter: nil
}.freeze
DEFAULT_ADAPTERS =
{
  kaminari_paginated: Adapters::KaminariAlreadyPaginated,
  will_paginate_paginated: Adapters::WillPaginateAlreadyPaginated,
  will_paginate: Adapters::WillPaginate,
  kaminari: Adapters::Kaminari,
  active_record: Adapters::ActiveRecord,
  enumerable: Adapters::Enumerable
}.freeze

Class Method Summary collapse

Class Method Details

.adaptersObject



49
50
51
# File 'lib/wor/paginate/config.rb', line 49

def adapters
  @adapters
end

.add_adapter(adapter) ⇒ Object



37
38
39
# File 'lib/wor/paginate/config.rb', line 37

def add_adapter(adapter)
  @adapters << adapter
end

.clear_adaptersObject



45
46
47
# File 'lib/wor/paginate/config.rb', line 45

def clear_adapters
  @adapters.clear
end

.remove_adapter(adapter) ⇒ Object



41
42
43
# File 'lib/wor/paginate/config.rb', line 41

def remove_adapter(adapter)
  @adapters.delete(adapter)
end

.reset!Object

This is mostly useful for the tests



54
55
56
# File 'lib/wor/paginate/config.rb', line 54

def reset!
  DEFAULTS_CONFIGS.each { |k, v| send("#{k}=", v) }
end

.reset_adapters!Object



58
59
60
# File 'lib/wor/paginate/config.rb', line 58

def reset_adapters!
  @adapters = DEFAULT_ADAPTERS.values
end