diff options
author | Ethan Koenig <etk39@cornell.edu> | 2017-06-17 00:51:28 -0400 |
---|---|---|
committer | Lunny Xiao <xiaolunwen@gmail.com> | 2017-06-17 12:51:28 +0800 |
commit | 8fc64741d95aa31665e4238fd7e20396a4cdf813 (patch) | |
tree | 613e6ec6f9d14e939e70345b18e4d115df7862e8 | |
parent | ce9b86082c4824917023b1bb480648d0cc56dd04 (diff) | |
download | gitea-8fc64741d95aa31665e4238fd7e20396a4cdf813.tar.gz gitea-8fc64741d95aa31665e4238fd7e20396a4cdf813.zip |
Fix deleted milestone bug (#1942)
* Fix deleted milestone bug
* Use locale for ghost milestone name
* Fix pointer bug
-rw-r--r-- | models/issue_comment.go | 14 | ||||
-rw-r--r-- | options/locale/locale_en-US.ini | 1 | ||||
-rw-r--r-- | routers/repo/issue.go | 10 |
3 files changed, 15 insertions, 10 deletions
diff --git a/models/issue_comment.go b/models/issue_comment.go index 69edf28f54..91d8551518 100644 --- a/models/issue_comment.go +++ b/models/issue_comment.go @@ -231,12 +231,9 @@ func (c *Comment) LoadMilestone() error { has, err := x.ID(c.OldMilestoneID).Get(&oldMilestone) if err != nil { return err - } else if !has { - return ErrMilestoneNotExist{ - ID: c.OldMilestoneID, - } + } else if has { + c.OldMilestone = &oldMilestone } - c.OldMilestone = &oldMilestone } if c.MilestoneID > 0 { @@ -244,12 +241,9 @@ func (c *Comment) LoadMilestone() error { has, err := x.ID(c.MilestoneID).Get(&milestone) if err != nil { return err - } else if !has { - return ErrMilestoneNotExist{ - ID: c.MilestoneID, - } + } else if has { + c.Milestone = &milestone } - c.Milestone = &milestone } return nil } diff --git a/options/locale/locale_en-US.ini b/options/locale/locale_en-US.ini index c2df7f27dc..c1aa44e8d7 100644 --- a/options/locale/locale_en-US.ini +++ b/options/locale/locale_en-US.ini @@ -612,6 +612,7 @@ issues.remove_label_at = `removed the <div class="ui label" style="color: %s; ba issues.add_milestone_at = `added this to the <b>%s</b> milestone %s` issues.change_milestone_at = `modified the milestone from <b>%s</b> to <b>%s</b> %s` issues.remove_milestone_at = `removed this from the <b>%s</b> milestone %s` +issues.deleted_milestone = `(deleted)` issues.self_assign_at = `self-assigned this %s` issues.add_assignee_at = `was assigned by <b>%s</b> %s` issues.remove_assignee_at = `removed their assignment %s` diff --git a/routers/repo/issue.go b/routers/repo/issue.go index b94eddc4ef..b5b620dbb3 100644 --- a/routers/repo/issue.go +++ b/routers/repo/issue.go @@ -625,6 +625,16 @@ func ViewIssue(ctx *context.Context) { ctx.Handle(500, "LoadMilestone", err) return } + ghostMilestone := &models.Milestone{ + ID: -1, + Name: ctx.Tr("repo.issues.deleted_milestone"), + } + if comment.OldMilestoneID > 0 && comment.OldMilestone == nil { + comment.OldMilestone = ghostMilestone + } + if comment.MilestoneID > 0 && comment.Milestone == nil { + comment.Milestone = ghostMilestone + } } else if comment.Type == models.CommentTypeAssignees { if err = comment.LoadAssignees(); err != nil { ctx.Handle(500, "LoadAssignees", err) |