1
1
mirror of https://github.com/go-gitea/gitea synced 2025-07-22 18:28:37 +00:00

Fix issue content history problems, improve UI (#17404)

* Improve: make diff result better, make the HTML element fit the full height in the content history diff dialog
* Bug fix: when edit the main issue, the poster is wrongly set to the issue poster
This commit is contained in:
wxiaoguang
2021-10-23 22:47:38 +08:00
committed by GitHub
parent 6c49517cbd
commit 943dc08722
4 changed files with 11 additions and 8 deletions

View File

@@ -88,12 +88,13 @@ func canSoftDeleteContentHistory(ctx *context.Context, issue *models.Issue, comm
if ctx.Repo.IsOwner() {
canSoftDelete = true
} else if ctx.Repo.CanWrite(models.UnitTypeIssues) {
canSoftDelete = ctx.User.ID == history.PosterID
if comment == nil {
canSoftDelete = canSoftDelete && (ctx.User.ID == issue.PosterID)
// the issue poster or the history poster can soft-delete
canSoftDelete = ctx.User.ID == issue.PosterID || ctx.User.ID == history.PosterID
canSoftDelete = canSoftDelete && (history.IssueID == issue.ID)
} else {
canSoftDelete = canSoftDelete && (ctx.User.ID == comment.PosterID)
// the comment poster or the history poster can soft-delete
canSoftDelete = ctx.User.ID == comment.PosterID || ctx.User.ID == history.PosterID
canSoftDelete = canSoftDelete && (history.IssueID == issue.ID)
canSoftDelete = canSoftDelete && (history.CommentID == comment.ID)
}
@@ -137,7 +138,8 @@ func GetContentHistoryDetail(ctx *context.Context) {
// compare the current history revision with the previous one
dmp := diffmatchpatch.New()
diff := dmp.DiffMain(prevHistoryContentText, history.ContentText, true)
// `checklines=false` makes better diff result
diff := dmp.DiffMain(prevHistoryContentText, history.ContentText, false)
diff = dmp.DiffCleanupEfficiency(diff)
// use chroma to render the diff html