data_table 0.1.6 → 0.1.7
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/Gemfile +0 -2
- data/Gemfile.lock +1 -1
- data/TODO +1 -0
- data/lib/data_table/active_record.rb +1 -1
- data/lib/data_table/base.rb +8 -0
- data/lib/data_table/mongoid.rb +1 -1
- data/lib/data_table/version.rb +1 -1
- data/spec/active_record_data_table_spec.rb +2 -1
- data/spec/data_table_spec.rb +17 -0
- data/spec/mongoid_data_table_spec.rb +2 -1
- metadata +5 -4
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -4,7 +4,7 @@ module DataTable
|
|
4
4
|
def _find_objects params, fields, search_fields
|
5
5
|
self.where(_where_conditions params[:sSearch], search_fields).
|
6
6
|
order(_order_fields params, fields).
|
7
|
-
paginate :page => _page(params), :per_page => params
|
7
|
+
paginate :page => _page(params), :per_page => _per_page(params)
|
8
8
|
end
|
9
9
|
|
10
10
|
def _where_conditions query, search_fields
|
data/lib/data_table/base.rb
CHANGED
@@ -37,6 +37,14 @@ module DataTable
|
|
37
37
|
def _page params
|
38
38
|
params[:iDisplayStart].to_i / params[:iDisplayLength].to_i + 1
|
39
39
|
end
|
40
|
+
|
41
|
+
def _per_page params
|
42
|
+
case (display_length = params[:iDisplayLength].to_i)
|
43
|
+
when -1 then self.count
|
44
|
+
when 0 then 25
|
45
|
+
else display_length
|
46
|
+
end
|
47
|
+
end
|
40
48
|
end
|
41
49
|
|
42
50
|
end
|
data/lib/data_table/mongoid.rb
CHANGED
@@ -4,7 +4,7 @@ module DataTable
|
|
4
4
|
def _find_objects params, fields, search_fields
|
5
5
|
self.where(_where_conditions params[:sSearch], search_fields).
|
6
6
|
order_by(_order_by_fields params, fields).
|
7
|
-
paginate :page => _page(params), :per_page => params
|
7
|
+
paginate :page => _page(params), :per_page => _per_page(params)
|
8
8
|
end
|
9
9
|
|
10
10
|
def _where_conditions raw_query, search_fields
|
data/lib/data_table/version.rb
CHANGED
@@ -12,8 +12,9 @@ describe DataTable do
|
|
12
12
|
mock(self)._where_conditions("answer", %w(foo bar)) { "where clause" }
|
13
13
|
mock(self)._order_fields(params, %w(foo bar baz)) { "order" }
|
14
14
|
|
15
|
-
mock(self).where("where clause") { mock!.order("order") { mock!.paginate({:page => :page, :per_page =>
|
15
|
+
mock(self).where("where clause") { mock!.order("order") { mock!.paginate({:page => :page, :per_page => :per_page}) { :answer } } }
|
16
16
|
mock(self)._page(params) { :page }
|
17
|
+
mock(self)._per_page(params) { :per_page }
|
17
18
|
|
18
19
|
_find_objects(params, %w(foo bar baz), %w(foo bar)).should == :answer
|
19
20
|
end
|
data/spec/data_table_spec.rb
CHANGED
@@ -63,4 +63,21 @@ describe DataTable do
|
|
63
63
|
|
64
64
|
end
|
65
65
|
|
66
|
+
context "#_per_page" do
|
67
|
+
|
68
|
+
it "should return 10 given an iDisplayLength of 10" do
|
69
|
+
send(:_per_page, {:iDisplayLength => "10"}).should == 10
|
70
|
+
end
|
71
|
+
|
72
|
+
it "should return a default of 25 given an invalid iDisplayLength" do
|
73
|
+
send(:_per_page, {:iDisplayLength => "foobar"}).should == 25
|
74
|
+
end
|
75
|
+
|
76
|
+
it "should return self.count given an iDisplayLength of -1" do
|
77
|
+
mock(self).count { :all }
|
78
|
+
send(:_per_page, {:iDisplayLength => "-1"}).should == :all
|
79
|
+
end
|
80
|
+
|
81
|
+
end
|
82
|
+
|
66
83
|
end
|
@@ -11,8 +11,9 @@ describe DataTable do
|
|
11
11
|
mock(self)._where_conditions("answer", %w(foo bar)) { "where clause" }
|
12
12
|
mock(self)._order_by_fields(params, %w(foo bar baz)) { "order by" }
|
13
13
|
|
14
|
-
mock(self).where("where clause") { mock!.order_by("order by") { mock!.paginate({:page => :page, :per_page =>
|
14
|
+
mock(self).where("where clause") { mock!.order_by("order by") { mock!.paginate({:page => :page, :per_page => :per_page}) { :answer } } }
|
15
15
|
mock(self)._page(params) { :page }
|
16
|
+
mock(self)._per_page(params) { :per_page }
|
16
17
|
|
17
18
|
_find_objects(params, %w(foo bar baz), %w(foo bar)).should == :answer
|
18
19
|
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: data_table
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 21
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 1
|
9
|
-
-
|
10
|
-
version: 0.1.
|
9
|
+
- 7
|
10
|
+
version: 0.1.7
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Jason Dew
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2010-
|
18
|
+
date: 2010-12-15 00:00:00 -05:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
@@ -114,6 +114,7 @@ files:
|
|
114
114
|
- LICENSE
|
115
115
|
- README.rdoc
|
116
116
|
- Rakefile
|
117
|
+
- TODO
|
117
118
|
- data_table.gemspec
|
118
119
|
- lib/data_table.rb
|
119
120
|
- lib/data_table/active_record.rb
|