Merge pull request #299 from nuss-justin/issue/216

Fix #216. Change milestones, labels and assigne without reloading the page
This commit is contained in:
无闻 2014-07-22 16:24:16 -04:00
commit 94b100ce43
2 changed files with 58 additions and 7 deletions

View file

@ -19,6 +19,7 @@ var (
ErrIssueNotExist = errors.New("Issue does not exist")
ErrLabelNotExist = errors.New("Label does not exist")
ErrMilestoneNotExist = errors.New("Milestone does not exist")
ErrWrongIssueCounter = errors.New("Invalid number of issues for this milestone")
)
// Issue represents an issue or pull request of repository.
@ -713,6 +714,11 @@ func ChangeMilestoneAssign(oldMid, mid int64, issue *Issue) (err error) {
if issue.IsClosed {
m.NumClosedIssues++
}
if m.NumIssues == 0 {
return ErrWrongIssueCounter
}
m.Completeness = m.NumClosedIssues * 100 / m.NumIssues
if _, err = sess.Id(m.Id).Update(m); err != nil {
sess.Rollback()