mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2025-05-14 05:52:43 +00:00
Finish edit a milestone
This commit is contained in:
parent
98dbbae2ef
commit
2eee1e9bc2
5 changed files with 102 additions and 20 deletions
|
@ -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 {
|
||||
deadline, err = time.Parse("01/02/2006", form.Deadline)
|
||||
if err != nil {
|
||||
ctx.Handle(500, "issue.NewMilestonePost(time.Parse)", err)
|
||||
return
|
||||
}
|
||||
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")
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue