| Class | TaskMailer |
| In: |
app/models/task_mailer.rb
|
| Parent: | ActionMailer::Base |
# File app/models/task_mailer.rb, line 49
49: def self.generate_from(task)
50: "#{task.requestor.environment.name} <#{task.requestor.environment.contact_email}>"
51: end
# File app/models/task_mailer.rb, line 3
3: def method_missing(name, *args)
4: task = args.shift
5: if task.kind_of?(Task) && task.respond_to?("#{name}_message")
6: send_message(task, task.send("#{name}_message"), *args)
7: else
8: super
9: end
10: end
# File app/models/task_mailer.rb, line 12
12: def target_notification(task, message)
13: msg = extract_message(message)
14:
15: recipients task.target.contact_email
16:
17: from self.class.generate_from(task)
18: subject task.description
19: body :requestor => task.requestor.name,
20: :target => task.target.name,
21: :message => msg,
22: :environment => task.requestor.environment.name,
23: :url => url_for(:host => task.requestor.environment.default_hostname, :controller => 'home')
24: end
# File app/models/task_mailer.rb, line 28
28: def extract_message(message)
29: if message.kind_of?(Proc)
30: self.instance_eval(&message)
31: else
32: message.to_s
33: end
34: end
# File app/models/task_mailer.rb, line 36
36: def send_message(task, message)
37:
38: text = extract_message(message)
39:
40: recipients task.requestor.email
41: from self.class.generate_from(task)
42: subject task.description
43: body :requestor => task.requestor.name,
44: :message => text,
45: :environment => task.requestor.environment.name,
46: :url => url_for(:host => task.requestor.environment.default_hostname, :controller => 'home')
47: end