fish0 0.0.11 → 0.0.12

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 68ad008f501706091d3cf602b636333982e72320
4
- data.tar.gz: 148e3cd7a84c008d4e5e2a6a494457c95906e030
3
+ metadata.gz: 048704aaeb4383c08255111e8b66d8273daea0c7
4
+ data.tar.gz: 4a74e88910112b37d4f17f8f8750fbf8a006e1b4
5
5
  SHA512:
6
- metadata.gz: b44448b52d5423bfa0f965a5fb6f35e97c9e4b0776a36ff1ea4043bc87a316d9de709237e07306fb8c2f4f3b562b4acadd528fa2f1e75095816326ec30ffba72
7
- data.tar.gz: e0a8e3441868b6c7f81bcb2e2e49ecc6cab33829b618cef0e0cfcd4a5e46a5a42d0d3ff1d9901944a3bd0489b0e0d8e98537e0103a83f9db175fae525f9e2865
6
+ metadata.gz: eeb878243f1e950b2b90f21e188aeb25156412504863964732bd54eb23785520c0543fd564110158ef3fb03bd364664e0b36c79169e5cf59e1805a616a17811c
7
+ data.tar.gz: ce76dc82914d6dbec6d6021a762e1c9ca6385da183d3f6d49bf4e621a71a02603105f8852dafc2a9294ddee61223c57537c48a2278759efe9d3af135ea057273
@@ -1,14 +1,14 @@
1
1
  module Fish0
2
2
  class Paginator
3
3
  include Enumerable
4
- delegate :each, :all, :skip, :limit, :padding, to: :collection
4
+ delegate :each, :all, :skip, :limit, :padding, :fetch, to: :collection
5
5
 
6
6
  attr_reader :collection
7
7
 
8
8
  def initialize(collection, page_number: 1, per_page: 22, padding: 0)
9
9
  @collection = collection || (raise ArgumentError)
10
10
  @per = per_page
11
- @page = page_number - 1
11
+ @page = page_number
12
12
  @padding = padding
13
13
  per(per_page)
14
14
  page(page_number)
@@ -16,13 +16,13 @@ module Fish0
16
16
 
17
17
  def page(value = @page)
18
18
  @page = value
19
- skip(@page * @per + @padding)
19
+ skip((@page - 1) * @per + @padding)
20
20
  self
21
21
  end
22
22
 
23
23
  def per(value = @per)
24
24
  @per = value
25
- skip(@page * @per + @padding)
25
+ skip((@page - 1) * @per + @padding)
26
26
  limit(@per)
27
27
  self
28
28
  end
@@ -33,5 +33,21 @@ module Fish0
33
33
  skip
34
34
  self
35
35
  end
36
+
37
+ def total
38
+ collection.count
39
+ end
40
+
41
+ def current_page
42
+ @page
43
+ end
44
+
45
+ def pages
46
+ (total.to_f / @per).ceil
47
+ end
48
+
49
+ def last_page?
50
+ current_page >= pages
51
+ end
36
52
  end
37
53
  end
data/lib/fish0/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Fish0
2
- VERSION = '0.0.11'.freeze
2
+ VERSION = '0.0.12'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fish0
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.11
4
+ version: 0.0.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dmitry Zuev
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-07-07 00:00:00.000000000 Z
11
+ date: 2016-07-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport