mirror of
https://github.com/simon987/task_tracker.git
synced 2025-04-16 00:46:47 +00:00
Project can't chain tasks to itself
This commit is contained in:
parent
df7f91a475
commit
b2fcf6fce4
@ -157,7 +157,7 @@ type UpdateProjectRequest struct {
|
|||||||
SubmitRate rate.Limit `json:"submit_rate"`
|
SubmitRate rate.Limit `json:"submit_rate"`
|
||||||
}
|
}
|
||||||
|
|
||||||
func (req *UpdateProjectRequest) isValid() bool {
|
func (req *UpdateProjectRequest) isValid(pid int64) bool {
|
||||||
if len(req.Name) <= 0 {
|
if len(req.Name) <= 0 {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
@ -167,6 +167,9 @@ func (req *UpdateProjectRequest) isValid() bool {
|
|||||||
if req.Hidden && req.Public {
|
if req.Hidden && req.Public {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
if req.Chain == pid {
|
||||||
|
return false
|
||||||
|
}
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -157,7 +157,7 @@ func (api *WebAPI) UpdateProject(r *Request) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
if !updateReq.isValid() {
|
if !updateReq.isValid(id) {
|
||||||
r.Json(JsonResponse{
|
r.Json(JsonResponse{
|
||||||
Ok: false,
|
Ok: false,
|
||||||
Message: "Invalid request",
|
Message: "Invalid request",
|
||||||
|
25
api/task.go
25
api/task.go
@ -77,11 +77,12 @@ func (api *WebAPI) SubmitTask(r *Request) {
|
|||||||
Message: err.Error(),
|
Message: err.Error(),
|
||||||
}, 400)
|
}, 400)
|
||||||
reservation.Cancel()
|
reservation.Cancel()
|
||||||
} else {
|
return
|
||||||
r.OkJson(JsonResponse{
|
|
||||||
Ok: true,
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
r.OkJson(JsonResponse{
|
||||||
|
Ok: true,
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
func (api *WebAPI) GetTaskFromProject(r *Request) {
|
func (api *WebAPI) GetTaskFromProject(r *Request) {
|
||||||
@ -123,17 +124,17 @@ func (api *WebAPI) GetTaskFromProject(r *Request) {
|
|||||||
Message: "No task available",
|
Message: "No task available",
|
||||||
})
|
})
|
||||||
reservation.CancelAt(time.Now())
|
reservation.CancelAt(time.Now())
|
||||||
} else {
|
return
|
||||||
|
|
||||||
r.OkJson(JsonResponse{
|
|
||||||
Ok: true,
|
|
||||||
Content: GetTaskResponse{
|
|
||||||
Task: task,
|
|
||||||
},
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
r.OkJson(JsonResponse{
|
||||||
|
Ok: true,
|
||||||
|
Content: GetTaskResponse{
|
||||||
|
Task: task,
|
||||||
|
},
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
func (api WebAPI) validateSignature(r *Request) (*storage.Worker, error) {
|
func (api WebAPI) validateSignature(r *Request) (*storage.Worker, error) {
|
||||||
|
|
||||||
widStr := string(r.Ctx.Request.Header.Peek("X-Worker-Id"))
|
widStr := string(r.Ctx.Request.Header.Peek("X-Worker-Id"))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user