Commit d39451e482d50afaed0105c38b049003aef6563c

Authored by Larissa Reis
1 parent 7ebda177

solr: only uses environment_id in filter query on indexed tables

  This avoids solr throwing an error when it tries to filter by
  unindexed column.
Showing 1 changed file with 5 additions and 4 deletions   Show diff stats
plugins/solr/lib/solr_plugin/search_helper.rb
@@ -42,12 +42,14 @@ module SolrPlugin::SearchHelper @@ -42,12 +42,14 @@ module SolrPlugin::SearchHelper
42 asset_class(asset).table_name 42 asset_class(asset).table_name
43 end 43 end
44 44
45 - def filters(asset) 45 + def filters(asset, environment)
46 case asset 46 case asset
47 when :products 47 when :products
48 ['solr_plugin_public:true', 'enabled:true'] 48 ['solr_plugin_public:true', 'enabled:true']
49 - when :events 49 + when :catalog, :events, :categories, :product_categories
50 [] 50 []
  51 + when :profiles, :people, :organizations, :communities, :enterprises
  52 + ['solr_plugin_public:true', 'environment_id:%s' % environment.id]
51 else 53 else
52 ['solr_plugin_public:true'] 54 ['solr_plugin_public:true']
53 end 55 end
@@ -88,8 +90,7 @@ module SolrPlugin::SearchHelper @@ -88,8 +90,7 @@ module SolrPlugin::SearchHelper
88 solr_options[:all_facets] = true 90 solr_options[:all_facets] = true
89 end 91 end
90 solr_options[:filter_queries] ||= [] 92 solr_options[:filter_queries] ||= []
91 - solr_options[:filter_queries] += filters(asset)  
92 - solr_options[:filter_queries] << "environment_id:#{environment.id}" 93 + solr_options[:filter_queries] += filters(asset, environment)
93 solr_options[:filter_queries] << asset_class.facet_category_query.call(category) if category 94 solr_options[:filter_queries] << asset_class.facet_category_query.call(category) if category
94 95
95 solr_options[:boost_functions] ||= [] 96 solr_options[:boost_functions] ||= []