From 1f61340fa3b255661e3b19432ab0af5162642139 Mon Sep 17 00:00:00 2001 From: Raphael Randschau Date: Mon, 23 Feb 2015 20:32:44 +0100 Subject: Properly calculate the number of open issues per label --- models/action.go | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'models') diff --git a/models/action.go b/models/action.go index 5cba2f51..a1a33f83 100644 --- a/models/action.go +++ b/models/action.go @@ -182,6 +182,17 @@ func updateIssuesCommit(userId, repoId int64, repoUserName, repoName string, com } issue.IsClosed = true + if err = issue.GetLabels(); err != nil { + return err + } + for _, label := range issue.Labels { + label.NumClosedIssues++ + + if err = UpdateLabel(label); err != nil { + return err + } + } + if err = UpdateIssue(issue); err != nil { return err } else if err = UpdateIssueUserPairsByStatus(issue.Id, issue.IsClosed); err != nil { @@ -230,6 +241,17 @@ func updateIssuesCommit(userId, repoId int64, repoUserName, repoName string, com } issue.IsClosed = false + if err = issue.GetLabels(); err != nil { + return err + } + for _, label := range issue.Labels { + label.NumClosedIssues-- + + if err = UpdateLabel(label); err != nil { + return err + } + } + if err = UpdateIssue(issue); err != nil { return err } else if err = UpdateIssueUserPairsByStatus(issue.Id, issue.IsClosed); err != nil { -- cgit v1.2.3