diff options
author | Frederick Muriuki Muriithi | 2025-07-31 16:20:01 -0500 |
---|---|---|
committer | Frederick Muriuki Muriithi | 2025-07-31 16:20:01 -0500 |
commit | 33418d9f428c8ea5dc14f2accc15f4abbf275ab2 (patch) | |
tree | 1bb421df8cc09a07b5f56d2d98f98dc8122d131b | |
parent | 742f50cb5a6ee6e5c089c616d2c4b65f4a5ecb9b (diff) | |
download | gn-auth-33418d9f428c8ea5dc14f2accc15f4abbf275ab2.tar.gz |
-rw-r--r-- | gn_auth/auth/authorisation/resources/groups/models.py | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/gn_auth/auth/authorisation/resources/groups/models.py b/gn_auth/auth/authorisation/resources/groups/models.py index 597ac37..a1937ce 100644 --- a/gn_auth/auth/authorisation/resources/groups/models.py +++ b/gn_auth/auth/authorisation/resources/groups/models.py @@ -690,10 +690,16 @@ def delete_group(conn: db.DbConnection, group_id: UUID): sqlite3.IntegrityError: if the group has members or linked resources, or both. """ + rsc = group_resource(conn, group_id) with db.cursor(conn) as cursor: cursor.execute("DELETE FROM group_join_requests WHERE group_id=?", (str(group_id),)) - cursor.execute("DELETE FROM group_resources WHERE group_id=?", - (str(group_id),)) + cursor.execute("DELETE FROM user_roles WHERE resource_id=?", + (str(rsc.resource_id),)) + cursor.execute( + "DELETE FROM group_resources WHERE group_id=? AND resource_id=?", + (str(group_id), str(rsc.resource_id))) + cursor.execute("DELETE FROM resources WHERE resource_id=?", + (str(rsc.resource_id),)) cursor.execute("DELETE FROM groups WHERE group_id=?", (str(group_id),)) |