1
0
Fork 0
forked from forgejo/forgejo

Save and view issue/comment content history (#16909)

* issue content history

* Use timeutil.TimeStampNow() for content history time instead of issue/comment.UpdatedUnix (which are not updated in time)

* i18n for frontend

* refactor

* clean up

* fix refactor

* re-format

* temp refactor

* follow db refactor

* rename IssueContentHistory to ContentHistory, remove empty model tags

* fix html

* use avatar refactor to generate avatar url

* add unit test, keep at most 20 history revisions.

* re-format

* syntax nit

* Add issue content history table

* Update models/migrations/v197.go

Co-authored-by: 6543 <6543@obermui.de>

* fix merge

Co-authored-by: zeripath <art27@cantab.net>
Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: Lauris BH <lauris@nix.lv>
This commit is contained in:
wxiaoguang 2021-10-11 06:40:03 +08:00 committed by GitHub
parent ff9a8a2231
commit c5c88f2f18
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
17 changed files with 766 additions and 8 deletions

View file

@ -14,6 +14,7 @@ import (
"unicode/utf8"
"code.gitea.io/gitea/models/db"
"code.gitea.io/gitea/models/issues"
"code.gitea.io/gitea/modules/git"
"code.gitea.io/gitea/modules/json"
"code.gitea.io/gitea/modules/log"
@ -1083,6 +1084,12 @@ func deleteComment(e db.Engine, comment *Comment) error {
return err
}
if _, err := e.Delete(&issues.ContentHistory{
CommentID: comment.ID,
}); err != nil {
return err
}
if comment.Type == CommentTypeComment {
if _, err := e.Exec("UPDATE `issue` SET num_comments = num_comments - 1 WHERE id = ?", comment.IssueID); err != nil {
return err