effective_datatables 4.17.1 → 4.17.3

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
  SHA256:
3
- metadata.gz: 2be4e45193ceaf2f5fc2f8543cde183156ec0210d844a9603977f7b456197bf4
4
- data.tar.gz: c7b437a89b3439f79b1d596936efb1be6401d8c12a4ffb844aecf2150d59772d
3
+ metadata.gz: 6f26ee8c45d6423c35786acd77acd78e6bd88bfe7e4be26b11aa6e7796cd9b3c
4
+ data.tar.gz: 8c573ae9e0cd5ba056ce26014e7a53344830af1e76070e7cd51b94d842d60671
5
5
  SHA512:
6
- metadata.gz: d8601ecaaea61c41cdb6375e0f6b6521593326596c620142a7ea5752030dc3b9957453c1c1c3b82d6de54e21d8811fb6bad64cebef629cc6f6d064d86d8aec29
7
- data.tar.gz: 0f55d6478da0bb096d493c898dc34a606b85f7b8b4009ff35bc5a58e5bc0a34c7828fe67b81fe4b4daa69f5b9f672d85e1d14787211bc6f4cf485e921d160884
6
+ metadata.gz: 0d6f374f11e08457c04f8aafe89c00765959d7482fc757afb06d4afbaf2d8528fcabf77299ed220b3f19f06c20b3a0cac2ec510ff531f3d1a20e95d82752e9d9
7
+ data.tar.gz: 41238dfc0d0a80fbd39ef9b52644b442a30a8136c1d8c626ac79f01259ce2fced941d4dace99a9d2a2248894cf3297747463d3f730b00ecb4384ad1010011ad6
@@ -9,7 +9,7 @@ module Effective
9
9
  @datatable = datatable
10
10
 
11
11
  if datatable.active_record_collection?
12
- @columns = datatable.columns.select { |_, col| col[:sql_column].present? }
12
+ @columns = datatable.columns.select { |_, col| col[:sql_column].present? || (col[:search_method].present? && col[:sql_column] != false) }
13
13
  else
14
14
  @columns = {}
15
15
  end
@@ -12,7 +12,7 @@ module Effective
12
12
  if datatable.array_collection?
13
13
  @columns = datatable.columns
14
14
  else
15
- @columns = datatable.columns.select { |_, col| col[:sql_column].blank? }
15
+ @columns = datatable.columns.reject { |_, col| col[:sql_column].present? || (col[:search_method].present? && col[:sql_column] != false) }
16
16
  end
17
17
  end
18
18
 
@@ -178,6 +178,8 @@ module Effective
178
178
  search[:collection] = search[:collection].map { |obj| [obj.to_s, obj.id] }
179
179
  elsif search[:collection].kind_of?(Array) && search[:collection].first.kind_of?(ActiveRecord::Base)
180
180
  search[:collection] = search[:collection].map { |obj| [obj.to_s, obj.id] }
181
+ elsif search[:collection].kind_of?(Array)
182
+ search[:collection] = search[:collection]
181
183
  end
182
184
 
183
185
  search[:as] ||= :select if search.key?(:collection)
@@ -189,6 +191,8 @@ module Effective
189
191
 
190
192
  if array_collection? && opts[:resource].present?
191
193
  search.reverse_merge!(search_resource.search_form_field(name, collection.first[opts[:index]]))
194
+ elsif search[:as] == :select && search[:collection].kind_of?(Array)
195
+ # Nothing to do
192
196
  elsif search[:as] != :string
193
197
  search.reverse_merge!(search_resource.search_form_field(name, opts[:as]))
194
198
  end
@@ -1,3 +1,3 @@
1
1
  module EffectiveDatatables
2
- VERSION = '4.17.1'.freeze
2
+ VERSION = '4.17.3'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: effective_datatables
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.17.1
4
+ version: 4.17.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Code and Effect
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-04-03 00:00:00.000000000 Z
11
+ date: 2023-06-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -195,7 +195,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
195
195
  - !ruby/object:Gem::Version
196
196
  version: '0'
197
197
  requirements: []
198
- rubygems_version: 3.1.2
198
+ rubygems_version: 3.4.10
199
199
  signing_key:
200
200
  specification_version: 4
201
201
  summary: Uniquely powerful server-side searching, sorting and filtering of any ActiveRecord