mongoid-data_table 1.0.8 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- mongoid-data_table (1.0.8)
4
+ mongoid-data_table (1.1.0)
5
5
  kaminari (~> 0.12.4)
6
6
  rails (>= 3.0.0)
7
7
 
@@ -124,7 +124,7 @@ module Mongoid
124
124
  self.instance_eval(&data_table.send(:render_data_table_block, klass, value, object, ''))
125
125
  end))
126
126
  else
127
- result << render_to_string(:inline => item.to_s, :locals => data_table.locals.reverse_merge(:"#{klass.name.parameterize('_')}" => object, :object => object))
127
+ result << render_to_string(:inline => item.to_s, :locals => data_table.locals.reverse_merge(:"#{klass.name.underscore.parameterize('_')}" => object, :object => object))
128
128
  end
129
129
  result
130
130
  end
@@ -1,5 +1,5 @@
1
1
  module Mongoid
2
2
  module DataTable
3
- VERSION = "1.0.8"
3
+ VERSION = "1.1.0"
4
4
  end
5
5
  end
@@ -0,0 +1,33 @@
1
+ module Admin
2
+ class ProviderDocument
3
+
4
+ include Mongoid::Document
5
+ include Mongoid::DataTable
6
+
7
+ ## fields ##
8
+ field :name
9
+ field :fein
10
+ field :country
11
+ field :state
12
+
13
+ ## associations ##
14
+ referenced_in :category
15
+
16
+ ## data_table ##
17
+ data_table_options.merge!({
18
+ :fields => %w(name fein category country state),
19
+ :searchable => %w(name fein),
20
+ :dataset => lambda do |admin_provider_document|
21
+ {
22
+ 0 => "<%= link_to(admin_provider_document.name, '#') %>",
23
+ 1 => admin_provider_document.fein,
24
+ 2 => admin_provider_document.category.name,
25
+ 3 => admin_provider_document.country,
26
+ 4 => admin_provider_document.state,
27
+ :DT_RowId => admin_provider_document._id
28
+ }
29
+ end
30
+ })
31
+
32
+ end
33
+ end
@@ -1,7 +1,7 @@
1
1
  $LOAD_PATH.unshift(File.dirname(__FILE__))
2
2
  $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), "..", "lib"))
3
3
 
4
- MODELS = File.join(File.dirname(__FILE__), "models")
4
+ MODELS = File.join(File.dirname(__FILE__), "models")
5
5
  SUPPORT = File.join(File.dirname(__FILE__), "support")
6
6
  $LOAD_PATH.unshift(MODELS)
7
7
  $LOAD_PATH.unshift(SUPPORT)
@@ -28,8 +28,8 @@ if defined? ::Mongoid
28
28
  ::Mongoid::Criteria.send :include, Kaminari::MongoidExtension::Criteria
29
29
  end
30
30
 
31
- Dir[ File.join(MODELS, "*.rb") ].sort.each { |file| require File.basename(file) }
32
- Dir[ File.join(SUPPORT, "*.rb") ].each { |file| require File.basename(file) }
31
+ Dir[ File.join(MODELS, "**/*.rb") ].sort.each { |file| require file }
32
+ Dir[ File.join(SUPPORT, "**/*.rb") ].each { |file| require file }
33
33
 
34
34
  RSpec.configure do |config|
35
35
  config.mock_with(:mocha)
@@ -71,4 +71,61 @@ describe 'mongoid-data_table' do
71
71
 
72
72
  end
73
73
 
74
+ ## namespaced test ##
75
+
76
+ let(:admin_provider_document) do
77
+ Admin::ProviderDocument.find_or_create_by({
78
+ :name => 'admin_name',
79
+ :fein => 'admin_fein',
80
+ :country => 'admin_country',
81
+ :state => 'admin_state',
82
+ :category_id => category.id
83
+ })
84
+ end
85
+
86
+ context "when using namespaced example from README" do
87
+
88
+ def sample_data(id)
89
+ {
90
+ "sEcho" => 0,
91
+ "iTotalRecords" => 1,
92
+ "iTotalDisplayRecords" => 1,
93
+ "aaData" => [{
94
+ "0" => "<a href=\"#\">admin_name</a>",
95
+ "1" => "admin_fein",
96
+ "2" => "my_category",
97
+ "3" => "admin_country",
98
+ "4" => "admin_state",
99
+ "DT_RowId" => id.to_s
100
+ }]
101
+ }
102
+ end
103
+
104
+ it "should return sample data" do
105
+ admin_provider_document.category.should == category
106
+ JSON.load(Admin::ProviderDocument.where(:name => 'admin_name').to_data_table(controller).to_json).should == sample_data(admin_provider_document.id)
107
+ end
108
+
109
+ context "with inline block" do
110
+
111
+ def custom_sample_data(id)
112
+ {
113
+ "sEcho" => 0,
114
+ "iTotalRecords" => 1,
115
+ "iTotalDisplayRecords" => 1,
116
+ "aaData" => [[id.to_s]]
117
+ }
118
+ end
119
+
120
+ it "should return sample data" do
121
+ admin_provider_document.category.should == category
122
+ JSON.load(Admin::ProviderDocument.where(:name => 'admin_name').to_data_table(controller).to_json do |admin_provider_document|
123
+ [ admin_provider_document.id ]
124
+ end).should == custom_sample_data(admin_provider_document.id)
125
+ end
126
+
127
+ end
128
+
129
+ end
130
+
74
131
  end
metadata CHANGED
@@ -1,117 +1,113 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: mongoid-data_table
3
- version: !ruby/object:Gem::Version
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.1.0
4
5
  prerelease:
5
- version: 1.0.8
6
6
  platform: ruby
7
- authors:
7
+ authors:
8
8
  - Jason Dew
9
9
  - Andrew Bennett
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
-
14
- date: 2011-07-01 00:00:00 Z
15
- dependencies:
16
- - !ruby/object:Gem::Dependency
13
+ date: 2011-07-07 00:00:00.000000000 Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
17
16
  name: rails
18
- requirement: &id001 !ruby/object:Gem::Requirement
17
+ requirement: &2153756140 !ruby/object:Gem::Requirement
19
18
  none: false
20
- requirements:
21
- - - ">="
22
- - !ruby/object:Gem::Version
19
+ requirements:
20
+ - - ! '>='
21
+ - !ruby/object:Gem::Version
23
22
  version: 3.0.0
24
23
  type: :runtime
25
24
  prerelease: false
26
- version_requirements: *id001
27
- - !ruby/object:Gem::Dependency
25
+ version_requirements: *2153756140
26
+ - !ruby/object:Gem::Dependency
28
27
  name: kaminari
29
- requirement: &id002 !ruby/object:Gem::Requirement
28
+ requirement: &2153755360 !ruby/object:Gem::Requirement
30
29
  none: false
31
- requirements:
30
+ requirements:
32
31
  - - ~>
33
- - !ruby/object:Gem::Version
32
+ - !ruby/object:Gem::Version
34
33
  version: 0.12.4
35
34
  type: :runtime
36
35
  prerelease: false
37
- version_requirements: *id002
38
- - !ruby/object:Gem::Dependency
36
+ version_requirements: *2153755360
37
+ - !ruby/object:Gem::Dependency
39
38
  name: bson_ext
40
- requirement: &id003 !ruby/object:Gem::Requirement
39
+ requirement: &2153754820 !ruby/object:Gem::Requirement
41
40
  none: false
42
- requirements:
41
+ requirements:
43
42
  - - ~>
44
- - !ruby/object:Gem::Version
43
+ - !ruby/object:Gem::Version
45
44
  version: 1.3.1
46
45
  type: :development
47
46
  prerelease: false
48
- version_requirements: *id003
49
- - !ruby/object:Gem::Dependency
47
+ version_requirements: *2153754820
48
+ - !ruby/object:Gem::Dependency
50
49
  name: mongoid
51
- requirement: &id004 !ruby/object:Gem::Requirement
50
+ requirement: &2153754220 !ruby/object:Gem::Requirement
52
51
  none: false
53
- requirements:
52
+ requirements:
54
53
  - - ~>
55
- - !ruby/object:Gem::Version
54
+ - !ruby/object:Gem::Version
56
55
  version: 2.0.2
57
56
  type: :development
58
57
  prerelease: false
59
- version_requirements: *id004
60
- - !ruby/object:Gem::Dependency
58
+ version_requirements: *2153754220
59
+ - !ruby/object:Gem::Dependency
61
60
  name: mocha
62
- requirement: &id005 !ruby/object:Gem::Requirement
61
+ requirement: &2153753660 !ruby/object:Gem::Requirement
63
62
  none: false
64
- requirements:
63
+ requirements:
65
64
  - - ~>
66
- - !ruby/object:Gem::Version
65
+ - !ruby/object:Gem::Version
67
66
  version: 0.9.12
68
67
  type: :development
69
68
  prerelease: false
70
- version_requirements: *id005
71
- - !ruby/object:Gem::Dependency
69
+ version_requirements: *2153753660
70
+ - !ruby/object:Gem::Dependency
72
71
  name: rspec
73
- requirement: &id006 !ruby/object:Gem::Requirement
72
+ requirement: &2153752720 !ruby/object:Gem::Requirement
74
73
  none: false
75
- requirements:
74
+ requirements:
76
75
  - - ~>
77
- - !ruby/object:Gem::Version
76
+ - !ruby/object:Gem::Version
78
77
  version: 2.6.0
79
78
  type: :development
80
79
  prerelease: false
81
- version_requirements: *id006
82
- - !ruby/object:Gem::Dependency
80
+ version_requirements: *2153752720
81
+ - !ruby/object:Gem::Dependency
83
82
  name: shoulda
84
- requirement: &id007 !ruby/object:Gem::Requirement
83
+ requirement: &2153752040 !ruby/object:Gem::Requirement
85
84
  none: false
86
- requirements:
85
+ requirements:
87
86
  - - ~>
88
- - !ruby/object:Gem::Version
87
+ - !ruby/object:Gem::Version
89
88
  version: 2.11.3
90
89
  type: :development
91
90
  prerelease: false
92
- version_requirements: *id007
93
- - !ruby/object:Gem::Dependency
91
+ version_requirements: *2153752040
92
+ - !ruby/object:Gem::Dependency
94
93
  name: watchr
95
- requirement: &id008 !ruby/object:Gem::Requirement
94
+ requirement: &2153751540 !ruby/object:Gem::Requirement
96
95
  none: false
97
- requirements:
96
+ requirements:
98
97
  - - ~>
99
- - !ruby/object:Gem::Version
100
- version: "0.7"
98
+ - !ruby/object:Gem::Version
99
+ version: '0.7'
101
100
  type: :development
102
101
  prerelease: false
103
- version_requirements: *id008
102
+ version_requirements: *2153751540
104
103
  description: Simple data preparation from Mongoid to the jQuery DataTables plugin
105
- email:
104
+ email:
106
105
  - jason.dew@gmail.com
107
106
  - potatosaladx@gmail.com
108
107
  executables: []
109
-
110
108
  extensions: []
111
-
112
109
  extra_rdoc_files: []
113
-
114
- files:
110
+ files:
115
111
  - .gitignore
116
112
  - .rspec
117
113
  - .watchr
@@ -125,6 +121,7 @@ files:
125
121
  - lib/mongoid/data_table/proxy.rb
126
122
  - lib/mongoid/data_table/version.rb
127
123
  - mongoid-data_table.gemspec
124
+ - spec/models/admin/provider_document.rb
128
125
  - spec/models/category.rb
129
126
  - spec/models/person.rb
130
127
  - spec/models/provider.rb
@@ -135,38 +132,36 @@ files:
135
132
  - spec/unit/mongoid/data_table_spec.rb
136
133
  homepage: http://rubygems.org/gems/mongoid-data_table
137
134
  licenses: []
138
-
139
135
  post_install_message:
140
136
  rdoc_options: []
141
-
142
- require_paths:
137
+ require_paths:
143
138
  - lib
144
- required_ruby_version: !ruby/object:Gem::Requirement
139
+ required_ruby_version: !ruby/object:Gem::Requirement
145
140
  none: false
146
- requirements:
147
- - - ">="
148
- - !ruby/object:Gem::Version
149
- hash: 3191554916280213591
150
- segments:
141
+ requirements:
142
+ - - ! '>='
143
+ - !ruby/object:Gem::Version
144
+ version: '0'
145
+ segments:
151
146
  - 0
152
- version: "0"
153
- required_rubygems_version: !ruby/object:Gem::Requirement
147
+ hash: 1715428614077198418
148
+ required_rubygems_version: !ruby/object:Gem::Requirement
154
149
  none: false
155
- requirements:
156
- - - ">="
157
- - !ruby/object:Gem::Version
158
- hash: 3191554916280213591
159
- segments:
150
+ requirements:
151
+ - - ! '>='
152
+ - !ruby/object:Gem::Version
153
+ version: '0'
154
+ segments:
160
155
  - 0
161
- version: "0"
156
+ hash: 1715428614077198418
162
157
  requirements: []
163
-
164
158
  rubyforge_project:
165
159
  rubygems_version: 1.8.5
166
160
  signing_key:
167
161
  specification_version: 3
168
162
  summary: Simple data preparation from Mongoid to the jQuery DataTables plugin
169
- test_files:
163
+ test_files:
164
+ - spec/models/admin/provider_document.rb
170
165
  - spec/models/category.rb
171
166
  - spec/models/person.rb
172
167
  - spec/models/provider.rb