summaryrefslogtreecommitdiffstats
path: root/models/issue.go
diff options
context:
space:
mode:
authorVedran <vedran.mikov@protonmail.com>2020-09-08 18:29:51 +0200
committerGitHub <noreply@github.com>2020-09-08 12:29:51 -0400
commite2043987543d6b1e94afc22d145d70ddaf814898 (patch)
treef8e952b03163cdc28ede50bf6598bf549bbed632 /models/issue.go
parent0ed8d268ad10fcf24a6cc578fc24c457d62f4fab (diff)
downloadgitea-e2043987543d6b1e94afc22d145d70ddaf814898.tar.gz
gitea-e2043987543d6b1e94afc22d145d70ddaf814898.zip
Change/remove a branch of an open issue (#9080)
* Add field with isIssueWriter to front end * Make branch field editable * Switch frontend to form and POST from javascript * Add /issue/id/ref endpoint to routes * Use UpdateIssueTitle model to change ref in backend * Removed crossreference check and adding comments on branch change * Use ref returned from POST to update the field * Prevent calling loadRepo from models/ * Branch/tag refreshed without page reload * Remove filter for empty branch name * Add clear option to tag list as well * Delete button translation and coloring * Fix for not showing selected branch name in new issue * Check that branch is not being changed on a PR * Change logic * Notification when changing issue ref * Fix for renamed permission parameter * Fix for failing build * Apply suggestions from code review Co-authored-by: zeripath <art27@cantab.net> Co-authored-by: Gitea <gitea@fake.local> Co-authored-by: zeripath <art27@cantab.net> Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com> Co-authored-by: techknowlogick <techknowlogick@gitea.io>
Diffstat (limited to 'models/issue.go')
-rw-r--r--models/issue.go16
1 files changed, 16 insertions, 0 deletions
diff --git a/models/issue.go b/models/issue.go
index 81652771ba..228316fc3c 100644
--- a/models/issue.go
+++ b/models/issue.go
@@ -709,6 +709,22 @@ func (issue *Issue) ChangeTitle(doer *User, oldTitle string) (err error) {
return sess.Commit()
}
+// ChangeRef changes the branch of this issue, as the given user.
+func (issue *Issue) ChangeRef(doer *User, oldRef string) (err error) {
+ sess := x.NewSession()
+ defer sess.Close()
+
+ if err = sess.Begin(); err != nil {
+ return err
+ }
+
+ if err = updateIssueCols(sess, issue, "ref"); err != nil {
+ return fmt.Errorf("updateIssueCols: %v", err)
+ }
+
+ return sess.Commit()
+}
+
// AddDeletePRBranchComment adds delete branch comment for pull request issue
func AddDeletePRBranchComment(doer *User, repo *Repository, issueID int64, branchName string) error {
issue, err := getIssueByID(x, issueID)