mirror of
https://github.com/go-gitea/gitea
synced 2025-07-23 02:38:35 +00:00
Almost done issue label #200
This commit is contained in:
@@ -445,7 +445,7 @@ func UpdateIssueLabel(ctx *middleware.Context, params martini.Params) {
|
||||
issue, err := models.GetIssueByIndex(ctx.Repo.Repository.Id, idx)
|
||||
if err != nil {
|
||||
if err == models.ErrIssueNotExist {
|
||||
ctx.Handle(404, "issue.UpdateIssueLabel", err)
|
||||
ctx.Handle(404, "issue.UpdateIssueLabel(GetIssueByIndex)", err)
|
||||
} else {
|
||||
ctx.Handle(500, "issue.UpdateIssueLabel(GetIssueByIndex)", err)
|
||||
}
|
||||
@@ -454,6 +454,17 @@ func UpdateIssueLabel(ctx *middleware.Context, params martini.Params) {
|
||||
|
||||
isAttach := ctx.Query("action") == "attach"
|
||||
labelStrId := ctx.Query("id")
|
||||
labelId, _ := base.StrTo(labelStrId).Int64()
|
||||
label, err := models.GetLabelById(labelId)
|
||||
if err != nil {
|
||||
if err == models.ErrLabelNotExist {
|
||||
ctx.Handle(404, "issue.UpdateIssueLabel(GetLabelById)", err)
|
||||
} else {
|
||||
ctx.Handle(500, "issue.UpdateIssueLabel(GetLabelById)", err)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
isHad := strings.Contains(issue.LabelIds, "$"+labelStrId+"|")
|
||||
isNeedUpdate := false
|
||||
if isAttach {
|
||||
@@ -473,6 +484,22 @@ func UpdateIssueLabel(ctx *middleware.Context, params martini.Params) {
|
||||
ctx.Handle(500, "issue.UpdateIssueLabel(UpdateIssue)", err)
|
||||
return
|
||||
}
|
||||
|
||||
if isAttach {
|
||||
label.NumIssues++
|
||||
if issue.IsClosed {
|
||||
label.NumClosedIssues++
|
||||
}
|
||||
} else {
|
||||
label.NumIssues--
|
||||
if issue.IsClosed {
|
||||
label.NumClosedIssues--
|
||||
}
|
||||
}
|
||||
if err = models.UpdateLabel(label); err != nil {
|
||||
ctx.Handle(500, "issue.UpdateIssueLabel(UpdateLabel)", err)
|
||||
return
|
||||
}
|
||||
}
|
||||
ctx.JSON(200, map[string]interface{}{
|
||||
"ok": true,
|
||||
|
Reference in New Issue
Block a user