Blob of app/models/mailer.rb (raw blob data)

1 class Mailer < ActionMailer::Base
2 def signup_notification(user)
3 setup_email(user)
4 @subject += 'Please activate your new account'
5 @body[:url] = "http://#{GitoriousConfig['gitorious_host']}/users/activate/#{user.activation_code}"
6
7 end
8
9 def activation(user)
10 setup_email(user)
11 @subject += 'Your account has been activated!'
12 end
13
14 def new_repository_clone(repository)
15 setup_email(repository.project.user)
16 @subject += %Q{#{repository.user.login} has cloned #{repository.project.slug}/#{repository.parent.name}}
17 @body[:user] = repository.project.user
18 @body[:cloner] = repository.user
19 @body[:project] = repository.project
20 @body[:repository] = repository
21 @body[:url] = "http://#{GitoriousConfig['gitorious_host']}/p/#{repository.project.slug}/repos/#{repository.name}"
22 end
23
24 def merge_request_notification(merge_request)
25 setup_email(merge_request.target_repository.user)
26 @subject += %Q{#{merge_request.source_repository.user.login} has requested a merge in #{merge_request.target_repository.project.title}}
27 @body[:merge_request] = merge_request
28 @body[:project] = merge_request.target_repository.project
29 url = "http://#{GitoriousConfig['gitorious_host']}/p/#{merge_request.target_repository.project.slug}"
30 url << "/repos/#{merge_request.target_repository.name}"
31 url << "/merge_requests/#{merge_request.id}"
32 @body[:url] = url
33 end
34
35 def forgotten_password(user, password)
36 setup_email(user)
37 @subject += "Your new password"
38 @body[:password] = password
39 end
40
41 protected
42 def setup_email(user)
43 @recipients = "#{user.email}"
44 @from = "Gitorious <no-reply@#{GitoriousConfig['gitorious_host']}>"
45 @subject = "[Gitorious] "
46 @sent_on = Time.now
47 @body[:user] = user
48 end
49 end