blob: 55c6594dbffdae861e923cf0f799b6e70d3adeee (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
class SearchController < ApplicationController
def index
end
def results
search = ThinkingSphinx.search(params[:q], :max_matches => 1000, :per_page => 1000)
search.context[:panes] << ThinkingSphinx::Panes::ExcerptsPane
@results = {}
search.each do |result|
klass = result.class.to_s
@results[klass] = [] unless @results.include? klass
@results[klass] << result
end
if @results.include? 'Revision'
@results['Glsa'] = [] unless @results['Glsa']
@results['Revision'].each do |rev|
@results['Glsa'] << rev.glsa
end
@results['Glsa'].uniq!
end
# Filter search results
if @results.include? 'Glsa'
@results['Glsa'].delete_if do |result|
not check_object_access(result)
end
end
rescue Riddle::ConnectionError => e
@error = true
rescue Riddle::ResponseError => e
@error = true
end
end
|