keep AV::Base clean!

This commit is contained in:
Akira Matsuda 2011-02-21 03:24:41 +09:00
parent 60a91a9667
commit c84135bae0
3 changed files with 26 additions and 19 deletions

View File

@ -0,0 +1,24 @@
module Kaminari
module ActionViewExtension
extend ActiveSupport::Concern
module InstanceMethods
# = Helpers
#
# A helper that renders the pagination links.
#
# <%= paginate @articles %>
#
# ==== Options
# * <tt>:window</tt> - The "inner window" size (2 by default).
# * <tt>:outer_window</tt> - The "outer window" size (1 by default).
# * <tt>:left</tt> - The "left outer window" size (1 by default).
# * <tt>:right</tt> - The "right outer window" size (1 by default).
# * <tt>:params</tt> - url_for parameters for the links (:controller, :action, etc.)
# * <tt>:remote</tt> - Ajax? (false by default)
# * <tt>:ANY_OTHER_VALUES</tt> - Any other hash key & values would be directly passed into each tag as :locals value.
def paginate(scope, options = {}, &block)
Kaminari::Helpers::PaginationRenderer.new self, options.reverse_merge(:current_page => scope.current_page, :num_pages => scope.num_pages, :per_page => scope.limit_value, :remote => false)
end
end
end
end

View File

@ -75,23 +75,5 @@ module Kaminari
end
end
end
# = Helpers
#
# A helper that renders the pagination links.
#
# <%= paginate @articles %>
#
# ==== Options
# * <tt>:window</tt> - The "inner window" size (2 by default).
# * <tt>:outer_window</tt> - The "outer window" size (1 by default).
# * <tt>:left</tt> - The "left outer window" size (1 by default).
# * <tt>:right</tt> - The "right outer window" size (1 by default).
# * <tt>:params</tt> - url_for parameters for the links (:controller, :action, etc.)
# * <tt>:remote</tt> - Ajax? (false by default)
# * <tt>:ANY_OTHER_VALUES</tt> - Any other hash key & values would be directly passed into each tag as :locals value.
def paginate(scope, options = {}, &block)
PaginationRenderer.new self, options.reverse_merge(:current_page => scope.current_page, :num_pages => scope.num_pages, :per_page => scope.limit_value, :remote => false)
end
end
end

View File

@ -2,6 +2,7 @@ require 'rails'
# ensure ORMs are loaded *before* initializing Kaminari
begin; require 'mongoid'; rescue LoadError; end
require File.join(File.dirname(__FILE__), 'helpers/action_view_extension')
require File.join(File.dirname(__FILE__), 'helpers/helpers')
require File.join(File.dirname(__FILE__), 'models/page_scope_methods')
require File.join(File.dirname(__FILE__), 'models/configuration_methods')
@ -20,7 +21,7 @@ module Kaminari
::Mongoid::Criteria.send :include, Kaminari::MongoidExtension::Criteria
end
ActiveSupport.on_load(:action_view) do
::ActionView::Base.send :include, Kaminari::Helpers
::ActionView::Base.send :include, Kaminari::ActionViewExtension
end
end
end