From a3fb4903edef5db4d1f100af94e733063516f81d Mon Sep 17 00:00:00 2001 From: Borgia Leiva Date: Tue, 3 Feb 2026 12:34:56 +0100 Subject: [PATCH] Fixed similar to last oversight where deleting a user would let it still in projects assigned users --- routers/me.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/routers/me.py b/routers/me.py index f06bb9c..44f78fe 100644 --- a/routers/me.py +++ b/routers/me.py @@ -35,6 +35,18 @@ def delete_me(request: Request, db: db_dependency): """Delete current authenticated user""" user = auth.get_user_from_jwt(request, db) + + ## Remove user from all projects, delete projects with no users left + projects = user.projects[:] + for project in projects: + project.users.remove(user) + if len(project.users) == 0: + ## delete project if no users left + tasks = project.tasks[:] + for task in tasks: + db.delete(task) + db.delete(project) + db.delete(user) db.commit() ## Logout user by clearing cookie