|
|
|
@ -524,23 +524,22 @@ func NewMilestonePost(ctx *middleware.Context, form auth.CreateMilestoneForm) {
|
|
|
|
|
var deadline time.Time
|
|
|
|
|
var err error
|
|
|
|
|
if len(form.Deadline) == 0 {
|
|
|
|
|
deadline = time.Now().AddDate(100, 0, 0)
|
|
|
|
|
} else {
|
|
|
|
|
form.Deadline = "12/31/9999"
|
|
|
|
|
}
|
|
|
|
|
deadline, err = time.Parse("01/02/2006", form.Deadline)
|
|
|
|
|
if err != nil {
|
|
|
|
|
ctx.Handle(500, "issue.NewMilestonePost(time.Parse)", err)
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
m := &models.Milestone{
|
|
|
|
|
mile := &models.Milestone{
|
|
|
|
|
RepoId: ctx.Repo.Repository.Id,
|
|
|
|
|
Index: int64(ctx.Repo.Repository.NumMilestones) + 1,
|
|
|
|
|
Name: form.Title,
|
|
|
|
|
Content: form.Content,
|
|
|
|
|
Deadline: deadline,
|
|
|
|
|
}
|
|
|
|
|
if err = models.NewMilestone(m); err != nil {
|
|
|
|
|
if err = models.NewMilestone(mile); err != nil {
|
|
|
|
|
ctx.Handle(500, "issue.NewMilestonePost(NewMilestone)", err)
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
@ -548,10 +547,73 @@ func NewMilestonePost(ctx *middleware.Context, form auth.CreateMilestoneForm) {
|
|
|
|
|
ctx.Redirect(ctx.Repo.RepoLink + "/issues/milestones")
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func UpdateMilestones(ctx *middleware.Context) {
|
|
|
|
|
ctx.Data["Title"] = "Update Milestones"
|
|
|
|
|
func UpdateMilestone(ctx *middleware.Context, params martini.Params) {
|
|
|
|
|
ctx.Data["Title"] = "Update Milestone"
|
|
|
|
|
ctx.Data["IsRepoToolbarIssues"] = true
|
|
|
|
|
ctx.Data["IsRepoToolbarIssuesList"] = true
|
|
|
|
|
|
|
|
|
|
idx, _ := base.StrTo(params["index"]).Int64()
|
|
|
|
|
if idx == 0 {
|
|
|
|
|
ctx.Handle(404, "issue.UpdateMilestone", nil)
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
mile, err := models.GetMilestoneByIndex(ctx.Repo.Repository.Id, idx)
|
|
|
|
|
if err != nil {
|
|
|
|
|
if err == models.ErrMilestoneNotExist {
|
|
|
|
|
ctx.Handle(404, "issue.UpdateMilestone(GetMilestoneByIndex)", err)
|
|
|
|
|
} else {
|
|
|
|
|
ctx.Handle(500, "issue.UpdateMilestone(GetMilestoneByIndex)", err)
|
|
|
|
|
}
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
mile.DeadlineString = mile.Deadline.UTC().Format("01/02/2006")
|
|
|
|
|
if mile.DeadlineString == "12/31/9999" {
|
|
|
|
|
mile.DeadlineString = ""
|
|
|
|
|
}
|
|
|
|
|
ctx.Data["Milestone"] = mile
|
|
|
|
|
|
|
|
|
|
ctx.HTML(200, "issue/milestone_edit")
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func UpdateMilestonePost(ctx *middleware.Context, params martini.Params, form auth.CreateMilestoneForm) {
|
|
|
|
|
ctx.Data["Title"] = "Update Milestone"
|
|
|
|
|
ctx.Data["IsRepoToolbarIssues"] = true
|
|
|
|
|
ctx.Data["IsRepoToolbarIssuesList"] = true
|
|
|
|
|
|
|
|
|
|
idx, _ := base.StrTo(params["index"]).Int64()
|
|
|
|
|
if idx == 0 {
|
|
|
|
|
ctx.Handle(404, "issue.UpdateMilestone", nil)
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
mile, err := models.GetMilestoneByIndex(ctx.Repo.Repository.Id, idx)
|
|
|
|
|
if err != nil {
|
|
|
|
|
if err == models.ErrMilestoneNotExist {
|
|
|
|
|
ctx.Handle(404, "issue.UpdateMilestone(GetMilestoneByIndex)", err)
|
|
|
|
|
} else {
|
|
|
|
|
ctx.Handle(500, "issue.UpdateMilestone(GetMilestoneByIndex)", err)
|
|
|
|
|
}
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var deadline time.Time
|
|
|
|
|
if len(form.Deadline) == 0 {
|
|
|
|
|
form.Deadline = "12/31/9999"
|
|
|
|
|
}
|
|
|
|
|
deadline, err = time.Parse("01/02/2006", form.Deadline)
|
|
|
|
|
if err != nil {
|
|
|
|
|
ctx.Handle(500, "issue.UpdateMilestonePost(time.Parse)", err)
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
mile.Name = form.Title
|
|
|
|
|
mile.Content = form.Content
|
|
|
|
|
mile.Deadline = deadline
|
|
|
|
|
if err = models.UpdateMilestone(mile); err != nil {
|
|
|
|
|
ctx.Handle(500, "issue.UpdateMilestonePost(UpdateMilestone)", err)
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ctx.Redirect(ctx.Repo.RepoLink + "/issues/milestones")
|
|
|
|
|
}
|
|
|
|
|