From 44114b38e601c8bf44f575daef1d0e0597f37d1d Mon Sep 17 00:00:00 2001 From: Lanre Adelowo Date: Mon, 18 Feb 2019 21:55:04 +0100 Subject: Implement "conversation lock" for issue comments (#5073) --- routers/api/v1/repo/issue_comment.go | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'routers/api') diff --git a/routers/api/v1/repo/issue_comment.go b/routers/api/v1/repo/issue_comment.go index 720513f007..3e6f04eb7a 100644 --- a/routers/api/v1/repo/issue_comment.go +++ b/routers/api/v1/repo/issue_comment.go @@ -5,6 +5,7 @@ package repo import ( + "errors" "time" "code.gitea.io/gitea/models" @@ -169,6 +170,11 @@ func CreateIssueComment(ctx *context.APIContext, form api.CreateIssueCommentOpti return } + if issue.IsLocked && !ctx.Repo.CanWrite(models.UnitTypeIssues) && !ctx.User.IsAdmin { + ctx.Error(403, "CreateIssueComment", errors.New(ctx.Tr("repo.issues.comment_on_locked"))) + return + } + comment, err := models.CreateIssueComment(ctx.User, ctx.Repo.Repository, issue, form.Body, nil) if err != nil { ctx.Error(500, "CreateIssueComment", err) -- cgit v1.2.3