aboutsummaryrefslogtreecommitdiffstats
path: root/internal/thing/handler.go
diff options
context:
space:
mode:
authorLibravatar Mo Tarbin <mhed.t91@gmail.com>2024-07-07 03:02:21 -0400
committerLibravatar Mo Tarbin <mhed.t91@gmail.com>2024-07-07 03:02:21 -0400
commita3fa964c585f62ccf4c4113da1dc324839122c88 (patch)
treef189f84015d8327d5d6bc7fb1b97f4362d0be2ec /internal/thing/handler.go
parent17326a16a018ae84d274be53b52be9273ef69932 (diff)
downloaddonetick-a3fa964c585f62ccf4c4113da1dc324839122c88.tar.gz
donetick-a3fa964c585f62ccf4c4113da1dc324839122c88.tar.bz2
donetick-a3fa964c585f62ccf4c4113da1dc324839122c88.zip
Fix Adaptive Scheduler, Update email handlers, telegram notifications
Diffstat (limited to 'internal/thing/handler.go')
-rw-r--r--internal/thing/handler.go10
1 files changed, 10 insertions, 0 deletions
diff --git a/internal/thing/handler.go b/internal/thing/handler.go
index 65bc871..7121c82 100644
--- a/internal/thing/handler.go
+++ b/internal/thing/handler.go
@@ -261,6 +261,16 @@ func (h *Handler) DeleteThing(c *gin.Context) {
c.JSON(403, gin.H{"error": "Forbidden"})
return
}
+ // confirm there are no chores associated with the thing:
+ thingChores, err := h.tRepo.GetThingChoresByThingId(c, thing.ID)
+ if err != nil {
+ c.JSON(500, gin.H{"error": "Unable to find tasks linked to this thing"})
+ return
+ }
+ if len(thingChores) > 0 {
+ c.JSON(405, gin.H{"error": "Unable to delete thing with associated tasks"})
+ return
+ }
if err := h.tRepo.DeleteThing(c, thingID); err != nil {
c.JSON(500, gin.H{"error": err.Error()})
return