// UpdateTask изменяет поля задания используя POST-параметры done и label. // Поля, для который не заданы значения в параметрах запроса, должны остаться // неизменными. // После выполнения запроса UpdateTask перенаправляет клиент на страницу списка. // POST /task/:id/update func UpdateTask(c *gin.Context) { td, _, ok := gettask(c) if !ok { return } label, ok := c.GetPostForm("label") if ok { td.Label = label } done, ok := c.GetPostForm("done") if ok { td.Done = (done != "0") } err := td.Save() if err != nil { ctl.RenderJSON(c, gin.H{ "status": "error", "error": err.Error(), }) return } ctl.RenderJSON(c, gin.H{ "status": "success", }) }