Sha256: bba12dc3d6df13f847328a442b072daf12158993cb0ee5a81246cfdc6078f4b5
Contents?: true
Size: 1.38 KB
Versions: 15
Compression:
Stored size: 1.38 KB
Contents
require 'active_support/configurable' module Kaminari # Configures global settings for Kaminari # Kaminari.configure do |config| # config.default_per_page = 10 # end def self.configure(&block) yield @config ||= Kaminari::Configuration.new end # Global settings for Kaminari def self.config @config end # need a Class for 3.0 class Configuration #:nodoc: include ActiveSupport::Configurable config_accessor :default_per_page config_accessor :max_per_page config_accessor :window config_accessor :outer_window config_accessor :left config_accessor :right config_accessor :page_method_name config_accessor :max_pages def param_name config.param_name.respond_to?(:call) ? config.param_name.call : config.param_name end # define param_name writer (copied from AS::Configurable) writer, line = 'def param_name=(value); config.param_name = value; end', __LINE__ singleton_class.class_eval writer, __FILE__, line class_eval writer, __FILE__, line end # this is ugly. why can't we pass the default value to config_accessor...? configure do |config| config.default_per_page = 25 config.max_per_page = nil config.window = 4 config.outer_window = 0 config.left = 0 config.right = 0 config.page_method_name = :page config.param_name = :page config.max_pages = nil end end
Version data entries
15 entries across 15 versions & 7 rubygems