Commit 0a9a2c2a0b75ba617611382b6335bf2b7fc68b9f
1 parent
435fd8f0
Exists in
master
and in
4 other branches
Make Notify#note_commit_email resque friendly
Update method to take ids and then perform #finds itself during mailer queue worker kick-off. Also, the faux SHA1 cannot have underscores or it will not match the commit pattern defined in the routes.
Showing
3 changed files
with
9 additions
and
9 deletions
Show diff stats
app/mailers/notify.rb
@@ -28,12 +28,11 @@ class Notify < ActionMailer::Base | @@ -28,12 +28,11 @@ class Notify < ActionMailer::Base | ||
28 | mail(:to => @user['email'], :subject => "gitlab | #{@note.project.name} ") | 28 | mail(:to => @user['email'], :subject => "gitlab | #{@note.project.name} ") |
29 | end | 29 | end |
30 | 30 | ||
31 | - def note_commit_email(user, note) | ||
32 | - @user = user | ||
33 | - @note = Note.find(note['id']) | ||
34 | - @project = @note.project | 31 | + def note_commit_email(recipient_id, note_id) |
32 | + recipient = User.find(recipient_id) | ||
33 | + @note = Note.find(note_id) | ||
35 | @commit = @note.target | 34 | @commit = @note.target |
36 | - mail(:to => @user['email'], :subject => "gitlab | note for commit | #{@note.project.name} ") | 35 | + mail(:to => recipient.email, :subject => "gitlab | note for commit | #{@note.project.name} ") |
37 | end | 36 | end |
38 | 37 | ||
39 | def note_merge_request_email(recipient_id, note_id) | 38 | def note_merge_request_email(recipient_id, note_id) |
app/views/notify/note_commit_email.html.haml
@@ -5,13 +5,13 @@ | @@ -5,13 +5,13 @@ | ||
5 | %td{:align => "left", :style => "padding: 20px 0 0;"} | 5 | %td{:align => "left", :style => "padding: 20px 0 0;"} |
6 | %h2{:style => "color:#646464; font-weight: bold; margin: 0; padding: 0; line-height: 26px; font-size: 18px; font-family: Helvetica, Arial, sans-serif; "} | 6 | %h2{:style => "color:#646464; font-weight: bold; margin: 0; padding: 0; line-height: 26px; font-size: 18px; font-family: Helvetica, Arial, sans-serif; "} |
7 | New comment for commit | 7 | New comment for commit |
8 | - = link_to truncate(@commit.id.to_s, :length => 16), project_commit_url(@project, :id => @commit.id, :anchor => "note_#{@note.id}") | 8 | + = link_to truncate(@commit.id.to_s, :length => 16), project_commit_url(@commit.project, :id => @commit.id, :anchor => "note_#{@note.id}") |
9 | %td{:style => "font-size: 1px; line-height: 1px;", :width => "21"} | 9 | %td{:style => "font-size: 1px; line-height: 1px;", :width => "21"} |
10 | %tr | 10 | %tr |
11 | %td{:style => "font-size: 1px; line-height: 1px;", :width => "21"} | 11 | %td{:style => "font-size: 1px; line-height: 1px;", :width => "21"} |
12 | %td{:style => "padding: 15px 0 15px;", :valign => "top"} | 12 | %td{:style => "padding: 15px 0 15px;", :valign => "top"} |
13 | %p{:style => "color:#767676; font-weight: normal; margin: 0; padding: 0; line-height: 20px; font-size: 12px;font-family: Helvetica, Arial, sans-serif; "} | 13 | %p{:style => "color:#767676; font-weight: normal; margin: 0; padding: 0; line-height: 20px; font-size: 12px;font-family: Helvetica, Arial, sans-serif; "} |
14 | - %a{:href => "#", :style => "color: #0eb6ce; text-decoration: none;"} #{@note.author.name} | 14 | + %a{:href => "#", :style => "color: #0eb6ce; text-decoration: none;"} #{@note.author_name} |
15 | left next message: | 15 | left next message: |
16 | %br | 16 | %br |
17 | %table{:border => "0", :cellpadding => "0", :cellspacing => "0", :width => "558"} | 17 | %table{:border => "0", :cellpadding => "0", :cellspacing => "0", :width => "558"} |
spec/mailers/notify_spec.rb
@@ -190,7 +190,8 @@ describe Notify do | @@ -190,7 +190,8 @@ describe Notify do | ||
190 | describe 'on a commit' do | 190 | describe 'on a commit' do |
191 | let(:commit) do | 191 | let(:commit) do |
192 | mock(:commit).tap do |commit| | 192 | mock(:commit).tap do |commit| |
193 | - commit.stub(:id).and_return('faux_sha_1') | 193 | + commit.stub(:id).and_return('fauxsha1') |
194 | + commit.stub(:project).and_return(project) | ||
194 | end | 195 | end |
195 | end | 196 | end |
196 | before(:each) { note.stub(:target).and_return(commit) } | 197 | before(:each) { note.stub(:target).and_return(commit) } |
@@ -204,7 +205,7 @@ describe Notify do | @@ -204,7 +205,7 @@ describe Notify do | ||
204 | end | 205 | end |
205 | 206 | ||
206 | it 'contains a link to the commit' do | 207 | it 'contains a link to the commit' do |
207 | - should have_body_text /faux_sha_1/ | 208 | + should have_body_text /fauxsha1/ |
208 | end | 209 | end |
209 | end | 210 | end |
210 | 211 |