Class TaskMailer
In: app/models/task_mailer.rb
Parent: ActionMailer::Base

Methods

Protected Class methods

[Source]

    # 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

Public Instance methods

[Source]

    # 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

[Source]

    # 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

Protected Instance methods

[Source]

    # 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

[Source]

    # 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

[Validate]