scoped_search 4.1.3 → 4.1.4
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.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cf2c98d3eed66905e04497673572661d98ca832a
|
4
|
+
data.tar.gz: 5cda23768c0ffef857dc038d74abd2539bf8881c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 96425ef732825dfb333d977f55a55be95ef3ac9dfda0ba9c4353fc97227d5caebfc4977b8cbdb786eb5929db84885f74435b7ca8795e449dcd2f7b432b0abbf5
|
7
|
+
data.tar.gz: '068d65cd7fe9e1d4e58b0080d92a22a9216ed879e17275aec5bce2651ce6cced96251803f062113c6ab66135a3ae90e478cf7b90bd2ea7b0437f5f83a96516ce'
|
data/CHANGELOG.rdoc
CHANGED
@@ -8,6 +8,11 @@ Please add an entry to the "Unreleased changes" section in your pull requests.
|
|
8
8
|
|
9
9
|
*Nothing yet*
|
10
10
|
|
11
|
+
=== Version 4.1.4
|
12
|
+
|
13
|
+
- Bugfix related to LIKE queries on virtual fields (#178)
|
14
|
+
- Add an "onClear" option to scopedSearch (#176)
|
15
|
+
|
11
16
|
=== Version 4.1.3
|
12
17
|
|
13
18
|
- Bugfix related to default fields for sets when using ext_method (#174)
|
@@ -25,6 +25,7 @@ $.widget( "custom.catcomplete", $.ui.autocomplete, {
|
|
25
25
|
var options = arguments[0] || {};
|
26
26
|
$(this).each(function(i,el){
|
27
27
|
var target = $(el);
|
28
|
+
var clearFn = options.onClear || function(){ target.val(''); };
|
28
29
|
|
29
30
|
target.catcomplete({
|
30
31
|
source: options.source || function( request, response ) {
|
@@ -50,6 +51,6 @@ $.widget( "custom.catcomplete", $.ui.autocomplete, {
|
|
50
51
|
$(this).catcomplete( target.attr('id'));
|
51
52
|
});
|
52
53
|
target.after('<a class="autocomplete-clear" tabindex="-1" title="Clear">×</a>')
|
53
|
-
target.next().on("click",
|
54
|
+
target.next().on("click", clearFn)
|
54
55
|
})
|
55
|
-
};
|
56
|
+
};
|
@@ -113,7 +113,7 @@ module ScopedSearch
|
|
113
113
|
# By default, it will simply look up the correct SQL operator in the SQL_OPERATORS
|
114
114
|
# hash, but this can be overridden by a database adapter.
|
115
115
|
def sql_operator(operator, field)
|
116
|
-
raise ScopedSearch::QueryNotSupported, "the operator '#{operator}' is not supported for field type '#{field.type}'" if [:like, :unlike].include?(operator) and !field.textual?
|
116
|
+
raise ScopedSearch::QueryNotSupported, "the operator '#{operator}' is not supported for field type '#{field.type}'" if !field.ext_method and [:like, :unlike].include?(operator) and !field.textual?
|
117
117
|
SQL_OPERATORS[operator]
|
118
118
|
end
|
119
119
|
|
@@ -554,7 +554,7 @@ module ScopedSearch
|
|
554
554
|
# Switches out the default LIKE operator in the default <tt>sql_operator</tt>
|
555
555
|
# method for ILIKE or @@ if full text searching is enabled.
|
556
556
|
def sql_operator(operator, field)
|
557
|
-
raise ScopedSearch::QueryNotSupported, "the operator '#{operator}' is not supported for field type '#{field.type}'" if [:like, :unlike].include?(operator) and !field.textual?
|
557
|
+
raise ScopedSearch::QueryNotSupported, "the operator '#{operator}' is not supported for field type '#{field.type}'" if !field.ext_method and [:like, :unlike].include?(operator) and !field.textual?
|
558
558
|
return '@@' if [:like, :unlike].include?(operator) && field.full_text_search
|
559
559
|
case operator
|
560
560
|
when :like then 'ILIKE'
|
@@ -90,6 +90,11 @@ describe ScopedSearch::QueryBuilder do
|
|
90
90
|
ScopedSearch::QueryBuilder.build_query(@definition, 'test_field = test_val').should eq(include: ['test1'], joins: ['test2'])
|
91
91
|
end
|
92
92
|
|
93
|
+
it "should support LIKE query even if database field doesn't exist" do
|
94
|
+
klass.should_receive(:ext_test).with('test_field', 'LIKE', 'test_val').and_return(conditions: 'field LIKE ?', parameter: ['%test_val%'])
|
95
|
+
ScopedSearch::QueryBuilder.build_query(@definition, 'test_field ~ test_val').should eq(conditions: ['(field LIKE ?)', '%test_val%'])
|
96
|
+
end
|
97
|
+
|
93
98
|
it "should raise error when non-hash returned" do
|
94
99
|
klass.should_receive(:ext_test).and_return('test')
|
95
100
|
lambda { ScopedSearch::QueryBuilder.build_query(@definition, 'test_field = test_val') }.should raise_error(ScopedSearch::QueryNotSupported, /should return hash/)
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: scoped_search
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.1.
|
4
|
+
version: 4.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Amos Benari
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2018-
|
13
|
+
date: 2018-09-06 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: activerecord
|