summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorDrew Blessing <drew.blessing@buckle.com>2013-12-26 10:50:29 -0600
committerDrew Blessing <drew.blessing@buckle.com>2014-01-06 15:38:13 -0600
commit09cbe95b20f87ac95dd84a3a033e3f0a1b9aa5a5 (patch)
treef172a3788a193bcf290df2f49f3c86f4141d4246 /app
parent6579de0727b37535ecba3a8f6188f51a714e3a3e (diff)
downloadgitlab-ce-09cbe95b20f87ac95dd84a3a033e3f0a1b9aa5a5.tar.gz
Add note for assignee changes
Change to username per @PixnBits suggestion
Diffstat (limited to 'app')
-rw-r--r--app/models/note.rb12
-rw-r--r--app/observers/issue_observer.rb5
2 files changed, 17 insertions, 0 deletions
diff --git a/app/models/note.rb b/app/models/note.rb
index 48b36bcafdf..67755f44148 100644
--- a/app/models/note.rb
+++ b/app/models/note.rb
@@ -82,6 +82,18 @@ class Note < ActiveRecord::Base
}, without_protection: true)
end
+ def create_assignee_change_note(noteable, project, author, assignee)
+ body = assignee.nil? ? '_Assignee removed_' : "_Reassigned to @#{assignee.username}_"
+
+ create({
+ noteable: noteable,
+ project: project,
+ author: author,
+ note: body,
+ system: true
+ }, without_protection: true)
+ end
+
def discussions_from_notes(notes)
discussion_ids = []
discussions = []
diff --git a/app/observers/issue_observer.rb b/app/observers/issue_observer.rb
index 1575cf0f19f..6ef13eb5d5e 100644
--- a/app/observers/issue_observer.rb
+++ b/app/observers/issue_observer.rb
@@ -19,6 +19,7 @@ class IssueObserver < BaseObserver
def after_update(issue)
if issue.is_being_reassigned?
notification.reassigned_issue(issue, current_user)
+ create_assignee_note(issue)
end
issue.notice_added_references(issue.project, current_user)
@@ -32,6 +33,10 @@ class IssueObserver < BaseObserver
Note.create_status_change_note(issue, issue.project, current_user, issue.state, current_commit)
end
+ def create_assignee_note(issue)
+ Note.create_assignee_change_note(issue, issue.project, current_user, issue.assignee)
+ end
+
def execute_hooks(issue)
issue.project.execute_hooks(issue.to_hook_data, :issue_hooks)
end