simple_pager 0.0.1 → 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/simple_pager.rb +10 -3
- metadata +4 -4
data/lib/simple_pager.rb
CHANGED
@@ -6,12 +6,18 @@ module SimplePager
|
|
6
6
|
# = Simple Paginating for ActiveRecord models
|
7
7
|
#
|
8
8
|
# Adds pager scope to all ActiveRecord models. Works similar to will_paginate but does not count the collection.
|
9
|
-
#
|
9
|
+
# per_page defaults to 30
|
10
10
|
#
|
11
11
|
# @posts = Post.pager(:page => params[:page]).order('created_at DESC')
|
12
|
+
# @posts = Post.pager(:page => params[:page], :per_page => 15).order('created_at DESC')
|
12
13
|
module ClassMethods
|
13
14
|
def pager(pp={})
|
14
|
-
|
15
|
+
if pp[:per_page]
|
16
|
+
self.per_page = pp[:per_page]
|
17
|
+
elsif !self.respond_to?(:per_page) or !self.per_page
|
18
|
+
self.per_page = 30
|
19
|
+
end
|
20
|
+
limit(self.per_page).
|
15
21
|
offset(pp[:page].blank? ? 0 : ((pp[:page].to_i-1)*(pp[:per_page] || (self.respond_to?(:per_page) ? self.per_page : 30))))
|
16
22
|
end
|
17
23
|
end
|
@@ -29,7 +35,8 @@ module SimplePagerHelper
|
|
29
35
|
if collection.empty?
|
30
36
|
prefix = content_tag(:p,"There are no more.")
|
31
37
|
end
|
32
|
-
|
38
|
+
prevnum = (params[:page].to_i - 1)
|
39
|
+
pprev = content_tag(:li, link_to( "← #{prev_name}".html_safe, request.query_parameters.merge({:page => (prevnum == 1 ? nil : prevnum)}) ),:class => 'previous')
|
33
40
|
end
|
34
41
|
if !@no_more_pages and collection.size >= per_page
|
35
42
|
pnext = content_tag(:li, link_to( "#{next_name} →".html_safe, request.query_parameters.merge({:page => (params[:page] ? params[:page].to_i + 1 : 2)}) ),:class => 'next')
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: simple_pager
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 27
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 0.0.
|
9
|
+
- 2
|
10
|
+
version: 0.0.2
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Peter Gerard
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date:
|
18
|
+
date: 2013-03-26 00:00:00 Z
|
19
19
|
dependencies: []
|
20
20
|
|
21
21
|
description: Super lightweight and simple Rails 3 pagination for when you don't need to count the number of items or pages. simple_pager shows Previous and More links.
|