Remove more duplication in the Notify mailer
This commit is contained in:
parent
652d955c92
commit
c5b13cc989
1 changed files with 18 additions and 14 deletions
|
@ -22,43 +22,38 @@ class Notify < ActionMailer::Base
|
||||||
end
|
end
|
||||||
|
|
||||||
def note_wall_email(recipient_id, note_id)
|
def note_wall_email(recipient_id, note_id)
|
||||||
recipient = User.find(recipient_id)
|
|
||||||
@note = Note.find(note_id)
|
@note = Note.find(note_id)
|
||||||
@project = @note.project
|
@project = @note.project
|
||||||
mail(to: recipient.email, subject: subject)
|
mail(to: recipient(recipient_id), subject: subject)
|
||||||
end
|
end
|
||||||
|
|
||||||
def note_commit_email(recipient_id, note_id)
|
def note_commit_email(recipient_id, note_id)
|
||||||
recipient = User.find(recipient_id)
|
|
||||||
@note = Note.find(note_id)
|
@note = Note.find(note_id)
|
||||||
@commit = @note.target
|
@commit = @note.target
|
||||||
@commit = CommitDecorator.decorate(@commit)
|
@commit = CommitDecorator.decorate(@commit)
|
||||||
@project = @note.project
|
@project = @note.project
|
||||||
mail(to: recipient.email, subject: subject("note for commit #{@commit.short_id}", @commit.title))
|
mail(to: recipient(recipient_id), subject: subject("note for commit #{@commit.short_id}", @commit.title))
|
||||||
end
|
end
|
||||||
|
|
||||||
def note_merge_request_email(recipient_id, note_id)
|
def note_merge_request_email(recipient_id, note_id)
|
||||||
recipient = User.find(recipient_id)
|
|
||||||
@note = Note.find(note_id)
|
@note = Note.find(note_id)
|
||||||
@merge_request = @note.noteable
|
@merge_request = @note.noteable
|
||||||
@project = @note.project
|
@project = @note.project
|
||||||
mail(to: recipient.email, subject: subject("note for merge request !#{@merge_request.id}"))
|
mail(to: recipient(recipient_id), subject: subject("note for merge request !#{@merge_request.id}"))
|
||||||
end
|
end
|
||||||
|
|
||||||
def note_issue_email(recipient_id, note_id)
|
def note_issue_email(recipient_id, note_id)
|
||||||
recipient = User.find(recipient_id)
|
|
||||||
@note = Note.find(note_id)
|
@note = Note.find(note_id)
|
||||||
@issue = @note.noteable
|
@issue = @note.noteable
|
||||||
@project = @note.project
|
@project = @note.project
|
||||||
mail(to: recipient.email, subject: subject("note for issue ##{@issue.id}"))
|
mail(to: recipient(recipient_id), subject: subject("note for issue ##{@issue.id}"))
|
||||||
end
|
end
|
||||||
|
|
||||||
def note_wiki_email(recipient_id, note_id)
|
def note_wiki_email(recipient_id, note_id)
|
||||||
recipient = User.find(recipient_id)
|
|
||||||
@note = Note.find(note_id)
|
@note = Note.find(note_id)
|
||||||
@wiki = @note.noteable
|
@wiki = @note.noteable
|
||||||
@project = @note.project
|
@project = @note.project
|
||||||
mail(to: recipient.email, subject: subject("note for wiki"))
|
mail(to: recipient(recipient_id), subject: subject("note for wiki"))
|
||||||
end
|
end
|
||||||
|
|
||||||
def new_merge_request_email(merge_request_id)
|
def new_merge_request_email(merge_request_id)
|
||||||
|
@ -68,23 +63,32 @@ class Notify < ActionMailer::Base
|
||||||
end
|
end
|
||||||
|
|
||||||
def reassigned_merge_request_email(recipient_id, merge_request_id, previous_assignee_id)
|
def reassigned_merge_request_email(recipient_id, merge_request_id, previous_assignee_id)
|
||||||
recipient = User.find(recipient_id)
|
|
||||||
@merge_request = MergeRequest.find(merge_request_id)
|
@merge_request = MergeRequest.find(merge_request_id)
|
||||||
@previous_assignee ||= User.find(previous_assignee_id)
|
@previous_assignee ||= User.find(previous_assignee_id)
|
||||||
@project = @merge_request.project
|
@project = @merge_request.project
|
||||||
mail(to: recipient.email, subject: subject("changed merge request !#{@merge_request.id}", @merge_request.title))
|
mail(to: recipient(recipient_id), subject: subject("changed merge request !#{@merge_request.id}", @merge_request.title))
|
||||||
end
|
end
|
||||||
|
|
||||||
def reassigned_issue_email(recipient_id, issue_id, previous_assignee_id)
|
def reassigned_issue_email(recipient_id, issue_id, previous_assignee_id)
|
||||||
recipient = User.find(recipient_id)
|
|
||||||
@issue = Issue.find(issue_id)
|
@issue = Issue.find(issue_id)
|
||||||
@previous_assignee ||= User.find(previous_assignee_id)
|
@previous_assignee ||= User.find(previous_assignee_id)
|
||||||
@project = @issue.project
|
@project = @issue.project
|
||||||
mail(to: recipient.email, subject: subject("changed issue ##{@issue.id}", @issue.title))
|
mail(to: recipient(recipient_id), subject: subject("changed issue ##{@issue.id}", @issue.title))
|
||||||
end
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
|
# Look up a User by their ID and return their email address
|
||||||
|
#
|
||||||
|
# recipient_id - User ID
|
||||||
|
#
|
||||||
|
# Returns a String containing the User's email address.
|
||||||
|
def recipient(recipient_id)
|
||||||
|
if recipient = User.find(recipient_id)
|
||||||
|
recipient.email
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
# Formats arguments into a String suitable for use as an email subject
|
# Formats arguments into a String suitable for use as an email subject
|
||||||
#
|
#
|
||||||
# extra - Extra Strings to be inserted into the subject
|
# extra - Extra Strings to be inserted into the subject
|
||||||
|
|
Loading…
Reference in a new issue