diff options
author | Louise Crow <louise.crow@gmail.com> | 2012-10-23 10:17:16 +0100 |
---|---|---|
committer | Louise Crow <louise.crow@gmail.com> | 2012-10-23 10:17:16 +0100 |
commit | 68c4c99c2f947d0b1cc275d2003d1b799ca411e2 (patch) | |
tree | 246d514069236a1d41f4267643451a1817bad7af /app/models | |
parent | 8d9e273deb8a1365ec40fc0a395a07f69745725a (diff) |
Add a clause to exclude from the original set of info requests to be processed any for which the last event of a kind which could form the initial request has already been alerted on.
Diffstat (limited to 'app/models')
-rw-r--r-- | app/models/request_mailer.rb | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/app/models/request_mailer.rb b/app/models/request_mailer.rb index ec45ac42a..698d29995 100644 --- a/app/models/request_mailer.rb +++ b/app/models/request_mailer.rb @@ -258,7 +258,20 @@ class RequestMailer < ApplicationMailer :conditions => [ "described_state = 'waiting_response' AND awaiting_description = ? - AND user_id is not null", false + AND user_id is not null + AND (SELECT id + FROM user_info_request_sent_alerts + WHERE alert_type = 'very_overdue_1' + AND info_request_id = info_requests.id + AND user_id = info_requests.user_id + AND info_request_event_id = (SELECT max(id) + FROM info_request_events + WHERE event_type in ('sent', + 'followup-sent', + 'resent', + 'followup-resent') + AND info_request_id = info_requests.id) + ) IS NULL", false ], :include => [ :user ] ) |