diff options
author | blueworrybear <blueworrybear@gmail.com> | 2019-10-15 20:19:32 +0800 |
---|---|---|
committer | zeripath <art27@cantab.net> | 2019-10-15 13:19:32 +0100 |
commit | 8c909820a9fd1697bb690ec0451c4ead97b51505 (patch) | |
tree | bda76eca8361237fbd5bc59bda58b278a516ffd6 /models/issue.go | |
parent | d7d348ea86bd8066aeb079ad121120095d5cba4d (diff) | |
download | gitea-8c909820a9fd1697bb690ec0451c4ead97b51505.tar.gz gitea-8c909820a9fd1697bb690ec0451c4ead97b51505.zip |
Enable Uploading/Removing Attachments When Editing an Issue/Comment (#8426)
Diffstat (limited to 'models/issue.go')
-rw-r--r-- | models/issue.go | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/models/issue.go b/models/issue.go index 90925f92f5..6503a0618f 100644 --- a/models/issue.go +++ b/models/issue.go @@ -855,6 +855,26 @@ func AddDeletePRBranchComment(doer *User, repo *Repository, issueID int64, branc return sess.Commit() } +// UpdateAttachments update attachments by UUIDs for the issue +func (issue *Issue) UpdateAttachments(uuids []string) (err error) { + sess := x.NewSession() + defer sess.Close() + if err = sess.Begin(); err != nil { + return err + } + attachments, err := getAttachmentsByUUIDs(sess, uuids) + if err != nil { + return fmt.Errorf("getAttachmentsByUUIDs [uuids: %v]: %v", uuids, err) + } + for i := 0; i < len(attachments); i++ { + attachments[i].IssueID = issue.ID + if err := updateAttachment(sess, attachments[i]); err != nil { + return fmt.Errorf("update attachment [id: %d]: %v", attachments[i].ID, err) + } + } + return sess.Commit() +} + // ChangeContent changes issue content, as the given user. func (issue *Issue) ChangeContent(doer *User, content string) (err error) { oldContent := issue.Content |