Commit af6235af6d4a43103a690f7fc226eb6b72eee969

Authored by Braulio Bhavamitra
1 parent e8a40c88

Update fixes from acts_as_solr_reloaded

vendor/plugins/acts_as_solr_reloaded/lib/acts_as_solr/parser_methods.rb
@@ -16,14 +16,23 @@ module ActsAsSolr #:nodoc: @@ -16,14 +16,23 @@ module ActsAsSolr #:nodoc:
16 begin 16 begin
17 Deprecation.validate_query(options) 17 Deprecation.validate_query(options)
18 18
19 - if options[:alternate_query]  
20 - query = query.blank? ? '*:*' : sanitize_query(query)  
21 - query = "#{options[:alternate_query]} #{query}" 19 + query_options[:filter_queries] ||= []
  20 + options[:alternate_query] ||= ''
  21 + options[:alternate_query].strip!
  22 + query.strip!
  23 +
  24 + # using *:* disable index boosts, so use the type filter
  25 + if query.blank?
  26 + query = solr_type_condition(options)
22 else 27 else
23 - query = query.blank? ? '*:*' : sanitize_query(query) 28 + query = sanitize_query(query)
  29 + query_options[:filter_queries] = [solr_type_condition(options)]
  30 +
  31 + # put types on filtered fields
  32 + query = replace_types([*query], ':').first
24 end 33 end
25 34
26 - query = replace_types([*query], ':').first # put types on filtered fields 35 + query = "#{options[:alternate_query]} #{query}" unless options[:alternate_query].blank?
27 query = add_relevance query, options[:relevance] 36 query = add_relevance query, options[:relevance]
28 query_options[:query] = query 37 query_options[:query] = query
29 38
@@ -37,7 +46,6 @@ module ActsAsSolr #:nodoc: @@ -37,7 +46,6 @@ module ActsAsSolr #:nodoc:
37 46
38 query_options[:operator] = options[:operator] 47 query_options[:operator] = options[:operator]
39 48
40 - query_options[:filter_queries] = [solr_type_condition(options)]  
41 query_options[:filter_queries] += replace_types([*options[:filter_queries]], '') if options[:filter_queries] 49 query_options[:filter_queries] += replace_types([*options[:filter_queries]], '') if options[:filter_queries]
42 50
43 query_options[:boost_functions] = replace_types([*options[:boost_functions]], '').join(' ') if options[:boost_functions] 51 query_options[:boost_functions] = replace_types([*options[:boost_functions]], '').join(' ') if options[:boost_functions]