From ac701637b42d2d6bb5fe9b258f3f54959b6a505e Mon Sep 17 00:00:00 2001 From: a1012112796 <1012112796@qq.com> Date: Fri, 12 Feb 2021 01:32:25 +0800 Subject: Add dismiss review feature (#12674) * Add dismiss review feature refs: https://github.blog/2016-10-12-dismissing-reviews-on-pull-requests/ https://developer.github.com/v3/pulls/reviews/#dismiss-a-review-for-a-pull-request * change modal ui and error message * Add unDismissReview api Signed-off-by: a1012112796 <1012112796@qq.com> Co-authored-by: zeripath Co-authored-by: 6543 <6543@obermui.de> --- routers/repo/issue.go | 2 +- routers/repo/pull_review.go | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) (limited to 'routers/repo') diff --git a/routers/repo/issue.go b/routers/repo/issue.go index 71c8f1efbb..fa1ee99771 100644 --- a/routers/repo/issue.go +++ b/routers/repo/issue.go @@ -1364,7 +1364,7 @@ func ViewIssue(ctx *context.Context) { return } } - } else if comment.Type == models.CommentTypeCode || comment.Type == models.CommentTypeReview { + } else if comment.Type == models.CommentTypeCode || comment.Type == models.CommentTypeReview || comment.Type == models.CommentTypeDismissReview { comment.RenderedContent = string(markdown.Render([]byte(comment.Content), ctx.Repo.RepoLink, ctx.Repo.Repository.ComposeMetas())) if err = comment.LoadReview(); err != nil && !models.IsErrReviewNotExist(err) { diff --git a/routers/repo/pull_review.go b/routers/repo/pull_review.go index df49b6cfe1..89e87ccc44 100644 --- a/routers/repo/pull_review.go +++ b/routers/repo/pull_review.go @@ -223,3 +223,15 @@ func SubmitReview(ctx *context.Context) { ctx.Redirect(fmt.Sprintf("%s/pulls/%d#%s", ctx.Repo.RepoLink, issue.Index, comm.HashTag())) } + +// DismissReview dismissing stale review by repo admin +func DismissReview(ctx *context.Context) { + form := web.GetForm(ctx).(*auth.DismissReviewForm) + comm, err := pull_service.DismissReview(form.ReviewID, form.Message, ctx.User, true) + if err != nil { + ctx.ServerError("pull_service.DismissReview", err) + return + } + + ctx.Redirect(fmt.Sprintf("%s/pulls/%d#%s", ctx.Repo.RepoLink, comm.Issue.Index, comm.HashTag())) +} -- cgit v1.2.3