kaminari-nobrainer 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: c27c1ca6dba0cc64fc69adb5722da946244203fe
4
+ data.tar.gz: 9cce7d1005c4a5e9abeca7d6bee1acf333077b01
5
+ SHA512:
6
+ metadata.gz: 8582a1eb7179143d4c9ebad1911f04da5295f0aeaa2163728585289c7f04b109ab03ffacec3e4920bffbc99627ab819dc86c914331a1325b5ffa4ace5bfd2028
7
+ data.tar.gz: a50373ce20b25cae07ad6c9cd8467c5745981a2027e13d0a593054e1c76ebfbd3b37eafc8382d4853c60025d6f95e6db63cd0c721153f7ea6fef7cf295b07b9e
@@ -0,0 +1,22 @@
1
+ NoBrainer Kaminari Adapter
2
+ ==========================
3
+
4
+ kaminari-nobrainer is an adapter to make
5
+ [Kaminari](https://github.com/amatsuda/kaminari) work nicely with
6
+ [NoBrainer](http://nobrainer.io).
7
+
8
+ Installation
9
+ ------------
10
+
11
+ Include in your Gemfile:
12
+
13
+ ```ruby
14
+ gem 'kaminari-nobrainer'
15
+ ```
16
+
17
+ Use kaminari as usual.
18
+
19
+ License
20
+ -------
21
+
22
+ MIT license.
@@ -0,0 +1,6 @@
1
+ require 'nobrainer'
2
+ require 'kaminari'
3
+
4
+ require 'kaminari/models/nobrainer_extension'
5
+ require 'kaminari/models/nobrainer_criteria_methods'
6
+ NoBrainer::Document.send :include, Kaminari::NoBrainerExtension::Document
@@ -0,0 +1,23 @@
1
+ module Kaminari
2
+ module NoBrainerCriteriaMethods
3
+ include Kaminari::PageScopeMethods
4
+
5
+ delegate :default_per_page, :max_per_page, :max_pages, :to => :model
6
+
7
+ def entry_name
8
+ model.model_name.human.downcase
9
+ end
10
+
11
+ def limit_value #:nodoc:
12
+ options[:limit]
13
+ end
14
+
15
+ def offset_value #:nodoc:
16
+ options[:skip]
17
+ end
18
+
19
+ def total_count #:nodoc:
20
+ @total_count ||= self.skip(nil).limit(nil).count
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,18 @@
1
+ module Kaminari
2
+ module NoBrainerExtension
3
+ module Document
4
+ extend ActiveSupport::Concern
5
+ include Kaminari::ConfigurationMethods
6
+
7
+ included do
8
+ # Fetch the values at the specified page number
9
+ # Model.page(5)
10
+ scope Kaminari.config.page_method_name do |num|
11
+ limit(default_per_page)
12
+ .skip(default_per_page * ([num.to_i, 1].max - 1))
13
+ .extend(Kaminari::NoBrainerCriteriaMethods)
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
metadata ADDED
@@ -0,0 +1,77 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: kaminari-nobrainer
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Nicolas Viennot
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-12-16 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: kaminari
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: 0.16.1
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: 0.16.1
27
+ - !ruby/object:Gem::Dependency
28
+ name: nobrainer
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 0.20.0
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: 0.20.0
41
+ description:
42
+ email:
43
+ - nicolas@viennot.biz
44
+ executables: []
45
+ extensions: []
46
+ extra_rdoc_files: []
47
+ files:
48
+ - README.md
49
+ - lib/kaminari-nobrainer.rb
50
+ - lib/kaminari/models/nobrainer_criteria_methods.rb
51
+ - lib/kaminari/models/nobrainer_extension.rb
52
+ homepage: http://github.com/nviennot/kaminari-nobrainer
53
+ licenses:
54
+ - MIT
55
+ metadata: {}
56
+ post_install_message:
57
+ rdoc_options: []
58
+ require_paths:
59
+ - lib
60
+ required_ruby_version: !ruby/object:Gem::Requirement
61
+ requirements:
62
+ - - ">="
63
+ - !ruby/object:Gem::Version
64
+ version: '0'
65
+ required_rubygems_version: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - ">="
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
70
+ requirements: []
71
+ rubyforge_project:
72
+ rubygems_version: 2.4.4
73
+ signing_key:
74
+ specification_version: 4
75
+ summary: NoBrainer adapter for Kaminari
76
+ test_files: []
77
+ has_rdoc: false