aboutsummaryrefslogtreecommitdiffstats
path: root/app/controllers/general_controller.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/controllers/general_controller.rb')
-rw-r--r--app/controllers/general_controller.rb16
1 files changed, 10 insertions, 6 deletions
diff --git a/app/controllers/general_controller.rb b/app/controllers/general_controller.rb
index 342355c75..986579874 100644
--- a/app/controllers/general_controller.rb
+++ b/app/controllers/general_controller.rb
@@ -5,7 +5,7 @@
# Copyright (c) 2008 UK Citizens Online Democracy. All rights reserved.
# Email: francis@mysociety.org; WWW: http://www.mysociety.org/
#
-# $Id: general_controller.rb,v 1.3 2008-03-06 21:49:33 francis Exp $
+# $Id: general_controller.rb,v 1.4 2008-03-07 23:13:38 francis Exp $
class GeneralController < ApplicationController
@@ -39,20 +39,24 @@ class GeneralController < ApplicationController
# Just does a redirect from ?query= search to /query
def search_redirect
- query = params[:query]
- redirect_to search_url(:query => query)
+ @query = params[:query]
+ if @query.nil?
+ render :action => "search"
+ else
+ redirect_to search_url(:query => @query)
+ end
end
# Actual search
def search
@per_page = 20
- query = params[:query]
+ @query = params[:query].join("/")
- query_nopunc = query.gsub(/[^a-z0-9]/i, " ")
+ query_nopunc = @query.gsub(/[^a-z0-9]/i, " ")
query_nopunc = query_nopunc.gsub(/\s+/, " ")
@highlight_words = query_nopunc.split(" ")
- @solr_object = InfoRequest.multi_solr_search(query, :models => [ OutgoingMessage, IncomingMessage ],
+ @solr_object = InfoRequest.multi_solr_search(@query, :models => [ OutgoingMessage, IncomingMessage, PublicBody, User ],
:limit => @per_page, :offset => ((params[:page]||"1").to_i-1) * @per_page)
@search_results = @solr_object.results
end