aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRobin Houston <robin.houston@gmail.com>2012-01-12 13:54:53 +0000
committerRobin Houston <robin.houston@gmail.com>2012-01-12 13:54:53 +0000
commit50da9903f9a390fa5c5b32b9af889f13b2954030 (patch)
tree2bcfaa2b7cbe0eedccad518c8c2d064203a2143c
parent9125f4c3023a49266fbe45fe5ac1e8b1bd9e47a7 (diff)
parentd84353a0dbff7c4543c7f4423d7b63728c7041c3 (diff)
Merge branch 'release/0.5' into wdtk
-rw-r--r--app/controllers/application_controller.rb4
-rw-r--r--app/models/request_mailer.rb13
-rw-r--r--spec/controllers/request_controller_spec.rb4
3 files changed, 16 insertions, 5 deletions
diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb
index 05f88a6b2..7aa522389 100644
--- a/app/controllers/application_controller.rb
+++ b/app/controllers/application_controller.rb
@@ -371,8 +371,8 @@ class ApplicationController < ActionController::Base
# XXX this is a result of the OR hack below -- should fix by
# allowing a parameter to perform_search to control the
# default operator!
- query = query.gsub(/(\s-\s|&)/, "")
- query = query.split(/ +(?!-)/)
+ query = query.strip.gsub(/(\s-\s|&)/, "")
+ query = query.split(/ +(?![-+]+)/)
if query.last.nil? || query.last.strip.length < 3
xapian_requests = nil
else
diff --git a/app/models/request_mailer.rb b/app/models/request_mailer.rb
index 272f2ea83..83cce9045 100644
--- a/app/models/request_mailer.rb
+++ b/app/models/request_mailer.rb
@@ -353,7 +353,18 @@ class RequestMailer < ApplicationMailer
# That that patch has not been applied, despite bribes of beer, is
# typical of the lack of quality of Rails.
- info_requests = InfoRequest.find(:all, :conditions => [ "(select id from info_request_events where event_type = 'comment' and info_request_events.info_request_id = info_requests.id and created_at > ? limit 1) is not null", Time.now() - 1.month ], :include => [ { :info_request_events => :user_info_request_sent_alerts } ], :order => "info_requests.id, info_request_events.created_at" )
+ info_requests = InfoRequest.find(:all,
+ :conditions => [
+ "info_requests.id in (
+ select info_request_id
+ from info_request_events
+ where event_type = 'comment'
+ and created_at > (now() - '1 month'::interval)
+ )"
+ ],
+ :include => [ { :info_request_events => :user_info_request_sent_alerts } ],
+ :order => "info_requests.id, info_request_events.created_at"
+ )
for info_request in info_requests
# Count number of new comments to alert on
diff --git a/spec/controllers/request_controller_spec.rb b/spec/controllers/request_controller_spec.rb
index dd56d5f9e..96786a0a3 100644
--- a/spec/controllers/request_controller_spec.rb
+++ b/spec/controllers/request_controller_spec.rb
@@ -436,7 +436,8 @@ describe RequestController, "when searching for an authority" do
for phrase in ["Marketing/PR activities - Aldborough E-Act Free Schoo",
"Request for communications between DCMS/Ed Vaizey and ICO from Jan 1st 2011 - May ",
"Bellevue Road Ryde Isle of Wight PO33 2AR - what is the",
- "NHS Ayrshire & Arran"]
+ "NHS Ayrshire & Arran",
+ " cardiff"]
lambda {
get :select_authority, :query => phrase
}.should_not raise_error(StandardError)
@@ -1511,7 +1512,6 @@ describe RequestController, "when doing type ahead searches" do
"NHS Ayrshire & Arran"]
lambda {
get :search_typeahead, :q => phrase
- puts phrase
}.should_not raise_error(StandardError)
end
end