Skip to content

Commit 05bd2cd

Browse files
committed
Merge pull request #20 from checkbutton/master
Support for Kaminari and will_paginate default and config values
2 parents 35431ba + 76d583b commit 05bd2cd

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

lib/api-pagination.rb

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,15 @@ class << self
66

77
def paginate(collection, options = {})
88
options[:page] ||= 1
9-
options[:per_page] = (options[:per_page].to_i <= 0 ? 25 : options[:per_page])
109

1110
case ApiPagination.paginator
1211
when :kaminari
12+
options[:per_page] = (options[:per_page].to_i <= 0 ? Kaminari.config.default_per_page : options[:per_page])
13+
options[:per_page] = (options[:per_page].to_i > Kaminari.config.max_per_page ? Kaminari.config.max_per_page : options[:per_page]) if Kaminari.config.max_per_page
1314
collection = Kaminari.paginate_array(collection) if collection.is_a?(Array)
1415
collection.page(options[:page]).per(options[:per_page])
1516
when :will_paginate
17+
options[:per_page] = (options[:per_page].to_i <= 0 ? WillPaginate.per_page : options[:per_page])
1618
if defined?(Sequel::Dataset) && collection.kind_of?(Sequel::Dataset)
1719
collection.paginate(options[:page], options[:per_page])
1820
else

0 commit comments

Comments
 (0)