When assigning an unassigned issue send notification with the correct text.

This commit is contained in:
Marin Jankovski 2014-07-02 11:55:05 +02:00
parent 119b02877d
commit 39f82b75f5
3 changed files with 18 additions and 4 deletions

View file

@ -301,7 +301,9 @@ class NotificationService
end
def reassign_resource_email(target, project, current_user, method)
recipients = User.where(id: [target.assignee_id, target.assignee_id_was])
assignee_id_was = previous_record(target, "assignee_id")
recipients = User.where(id: [target.assignee_id, assignee_id_was])
# Add watchers to email list
recipients = recipients.concat(project_watchers(project))
@ -313,11 +315,20 @@ class NotificationService
recipients.delete(current_user)
recipients.each do |recipient|
mailer.send(method, recipient.id, target.id, target.assignee_id_was, current_user.id)
mailer.send(method, recipient.id, target.id, assignee_id_was, current_user.id)
end
end
def mailer
Notify.delay
end
def previous_record(object, attribute)
if object && attribute
if object.previous_changes.include?(attribute)
return object.previous_changes[attribute].first
end
end
nil
end
end

View file

@ -4,5 +4,8 @@
from
%strong #{@previous_assignee.name}
to
%strong #{@issue.assignee_name}
- if @issue.assignee_id
%strong #{@issue.assignee_name}
- else
%strong Unassigned

View file

@ -2,4 +2,4 @@ Reassigned Issue <%= @issue.iid %>
<%= url_for(project_issue_url(@issue.project, @issue)) %>
Assignee changed <%= "from #{@previous_assignee.name}" if @previous_assignee %> to <%= @issue.assignee_name %>
Assignee changed <%= "from #{@previous_assignee.name}" if @previous_assignee %> to <%= "#{@issue.assignee_id ? @issue.assignee_name : 'Unassigned'}" %>