multi-solr 01.06.00 → 01.07.00
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.
@@ -27,6 +27,7 @@ class MultiSolr::SearchRequest
|
|
27
27
|
|
28
28
|
BASE_FILTER_MAP = { :simple => MultiSolr::SolrFilterSimple,
|
29
29
|
:collection => MultiSolr::SolrFilterCollection,
|
30
|
+
:range => MultiSolr::SolrFilterRange,
|
30
31
|
:date_range => MultiSolr::SolrFilterDateRange,
|
31
32
|
:date => MultiSolr::SolrFilterDate,
|
32
33
|
:free_query => MultiSolr::SolrFilterFreeQuery
|
@@ -1,6 +1,6 @@
|
|
1
1
|
# Filter für Datumsbereiche mit von- und bis-Datum
|
2
2
|
|
3
|
-
class MultiSolr::SolrFilterDateRange < MultiSolr::
|
3
|
+
class MultiSolr::SolrFilterDateRange < MultiSolr::SolrFilterRange
|
4
4
|
|
5
5
|
# Erzeugen des SolR-Query-Strings
|
6
6
|
def build_solr_query value
|
@@ -10,16 +10,6 @@ class MultiSolr::SolrFilterDateRange < MultiSolr::SolrFilterSimple
|
|
10
10
|
end
|
11
11
|
|
12
12
|
|
13
|
-
def render_value value
|
14
|
-
from, to = extract_from_to value
|
15
|
-
return '' if from.nil? && to.nil?
|
16
|
-
s = []
|
17
|
-
s << ">=#{from}" unless from.blank?
|
18
|
-
s << "<=#{to}" unless to.blank?
|
19
|
-
s.join(' und ')
|
20
|
-
end
|
21
|
-
|
22
|
-
|
23
13
|
# Generieren der 2 Input-Felder mit der Option :as => :date_picker
|
24
14
|
# Dadurch können diesem Felder das jQuery-Datepicker-UI nutzen
|
25
15
|
# Params: siehe MultiSolr::SolrFilterSimple#render_for_semantic_form
|
@@ -39,15 +29,6 @@ class MultiSolr::SolrFilterDateRange < MultiSolr::SolrFilterSimple
|
|
39
29
|
end
|
40
30
|
|
41
31
|
|
42
|
-
# Aus dem 'value' von und bis extrahieren
|
43
|
-
# Params:
|
44
|
-
# value: Hash mit from- und to-Datumsangabe (mit Filternamen als Prefix)
|
45
|
-
# Beispiel: { 'create_date_from' => '2011-01-01', 'create_date_to' => '2011-06-01' }
|
46
|
-
# returns: Array mit von und bis ['2011-01-01', '2011-06-01']
|
47
|
-
def extract_from_to value
|
48
|
-
return nil if value.blank? || !value.is_a?(Hash) || value.empty?
|
49
|
-
[ value["#{@name}_from"], value["#{@name }_to"] ]
|
50
|
-
end
|
51
32
|
|
52
33
|
def extract_from_to_in_ISO8601 value
|
53
34
|
from, to = extract_from_to value
|
@@ -0,0 +1,38 @@
|
|
1
|
+
# Filter für DBereiche mit von- und bis-Werten
|
2
|
+
|
3
|
+
class MultiSolr::SolrFilterRange < MultiSolr::SolrFilterSimple
|
4
|
+
|
5
|
+
# Erzeugen des SolR-Query-Strings
|
6
|
+
def build_solr_query value
|
7
|
+
from, to = extract_from_to value
|
8
|
+
return nil if from.nil? && to.nil?
|
9
|
+
"#{@field_name}:[#{from || '*'} TO #{to || '*'}]"
|
10
|
+
end
|
11
|
+
|
12
|
+
|
13
|
+
def render_value value
|
14
|
+
from, to = extract_from_to value
|
15
|
+
return '' if from.nil? && to.nil?
|
16
|
+
s = []
|
17
|
+
s << ">=#{from}" unless from.blank?
|
18
|
+
s << "<=#{to}" unless to.blank?
|
19
|
+
s.join(' und ')
|
20
|
+
end
|
21
|
+
|
22
|
+
|
23
|
+
|
24
|
+
# Aus dem 'value' von und bis extrahieren
|
25
|
+
# Params:
|
26
|
+
# value: Hash mit from- und to-Datumsangabe (mit Filternamen als Prefix)
|
27
|
+
# Beispiel: { 'create_date_from' => '2011-01-01', 'create_date_to' => '2011-06-01' }
|
28
|
+
# returns: Array mit von und bis ['2011-01-01', '2011-06-01']
|
29
|
+
def extract_from_to value
|
30
|
+
return nil if value.blank? || !value.is_a?(Hash) || value.empty?
|
31
|
+
[ value["#{@name}_from"], value["#{@name }_to"] ]
|
32
|
+
end
|
33
|
+
|
34
|
+
end
|
35
|
+
|
36
|
+
|
37
|
+
|
38
|
+
|
data/lib/multi_solr/version.rb
CHANGED
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: multi-solr
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 11
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 1
|
8
|
-
-
|
8
|
+
- 7
|
9
9
|
- 0
|
10
|
-
version: 01.
|
10
|
+
version: 01.07.00
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Bernd Ledig
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date:
|
18
|
+
date: 2013-01-22 00:00:00 Z
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
21
21
|
name: rsolr
|
@@ -136,6 +136,7 @@ files:
|
|
136
136
|
- lib/multi_solr/solr_filter_date.rb
|
137
137
|
- lib/multi_solr/solr_filter_date_range.rb
|
138
138
|
- lib/multi_solr/solr_filter_free_query.rb
|
139
|
+
- lib/multi_solr/solr_filter_range.rb
|
139
140
|
- lib/multi_solr/solr_filter_simple.rb
|
140
141
|
- lib/multi_solr/timeline_core_handler.rb
|
141
142
|
- lib/multi_solr/utils.rb
|