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 15:31:30 +0100 |
commit | 9e40cd6e0926e8b2197a19c337ae9ea8b974ac77 (patch) | |
tree | a6d7693b081c126d36109237acbd6c423c9d50a1 | |
parent | 3c01181504f98cd03f37c053abd973e0d51a374a (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.
-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 ] ) |