summaryrefslogtreecommitdiffstats
path: root/services/issue/issue.go
diff options
context:
space:
mode:
Diffstat (limited to 'services/issue/issue.go')
-rw-r--r--services/issue/issue.go14
1 files changed, 14 insertions, 0 deletions
diff --git a/services/issue/issue.go b/services/issue/issue.go
index 64d69119b7..0f90a2bcd0 100644
--- a/services/issue/issue.go
+++ b/services/issue/issue.go
@@ -42,6 +42,20 @@ func ChangeTitle(issue *models.Issue, doer *models.User, title string) (err erro
return nil
}
+// ChangeIssueRef changes the branch of this issue, as the given user.
+func ChangeIssueRef(issue *models.Issue, doer *models.User, ref string) error {
+ oldRef := issue.Ref
+ issue.Ref = ref
+
+ if err := issue.ChangeRef(doer, oldRef); err != nil {
+ return err
+ }
+
+ notification.NotifyIssueChangeRef(doer, issue, oldRef)
+
+ return nil
+}
+
// UpdateAssignees is a helper function to add or delete one or multiple issue assignee(s)
// Deleting is done the GitHub way (quote from their api documentation):
// https://developer.github.com/v3/issues/#edit-an-issue