aboutsummaryrefslogtreecommitdiffstats
path: root/app/models/outgoing_message.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/models/outgoing_message.rb')
-rw-r--r--app/models/outgoing_message.rb18
1 files changed, 17 insertions, 1 deletions
diff --git a/app/models/outgoing_message.rb b/app/models/outgoing_message.rb
index cc1b7ad54..ed2b415ae 100644
--- a/app/models/outgoing_message.rb
+++ b/app/models/outgoing_message.rb
@@ -5,7 +5,7 @@
# Copyright (c) 2007 UK Citizens Online Democracy. All rights reserved.
# Email: francis@mysociety.org; WWW: http://www.mysociety.org/
#
-# $Id: outgoing_message.rb,v 1.4 2007-09-12 15:56:18 francis Exp $
+# $Id: outgoing_message.rb,v 1.5 2007-10-16 08:57:32 francis Exp $
class OutgoingMessage < ActiveRecord::Base
belongs_to :info_request
@@ -15,5 +15,21 @@ class OutgoingMessage < ActiveRecord::Base
validates_inclusion_of :status, :in => ['ready', 'sent', 'failed']
validates_inclusion_of :message_type, :in => ['initial_request'] #, 'complaint']
+
+ def send_message
+ if message_type == 'initial_request'
+ if status == 'ready'
+ # test this with:
+ # InfoRequest.find(1).outgoing_messages[0].send_message
+
+ RequestMailer.deliver_initial_request(info_request, self)
+ else
+ raise "Message id #{id} not ready for send_message"
+ end
+ else
+ raise "Message id #{id} has type '#{message_type}' which send_message can't handle"
+ end
+
+ end
end