채수원 2015-02-13
Merge branch 'issue-2099' of dlab/hive
from pull-request 1467

* refs/heads/issue-2099:
  Fixed bug that generating assignee-changed-event when editing the issue.

Reviewed-by: 채수원 
@51668ffa072050212bb0f2ed93c92505cd240755
app/controllers/IssueApp.java
--- app/controllers/IssueApp.java
+++ app/controllers/IssueApp.java
@@ -504,6 +504,7 @@
         }
 
         final Issue issue = issueForm.get();
+        setAssignee(issueForm, issue, project);
         removeAnonymousAssignee(issue);
         setMilestone(issueForm, issue);
         issue.dueDate = JodaDateUtil.lastSecondOfDay(issue.dueDate);
@@ -533,6 +534,16 @@
         return editPosting(originalIssue, issue, issueForm, redirectTo, preUpdateHook);
     }
 
+    private static void setAssignee(Form<Issue> issueForm, Issue issue, Project project) {
+        String value = issueForm.field("assignee.user.id").value();
+        if (value != null) {
+            long userId = Long.parseLong(value);
+            if (userId != User.anonymous.id) {
+                issue.assignee = new Assignee(userId, project.id);
+            }
+        }
+    }
+
     private static void setMilestone(Form<Issue> issueForm, Issue issue) {
         String milestoneId = issueForm.data().get("milestoneId");
         if(milestoneId != null && !milestoneId.isEmpty()) {
Add a comment
List