aboutsummaryrefslogtreecommitdiffstats
path: root/backend/routes/admin.py
diff options
context:
space:
mode:
authorGravatar ks129 <[email protected]>2020-12-24 08:12:35 +0200
committerGravatar ks129 <[email protected]>2020-12-24 08:12:35 +0200
commite0efac856723c6c2517308d76a2be4f27bc113df (patch)
tree02f665350dea135504da1542ebc916241c2764f3 /backend/routes/admin.py
parentUse Pydantic validation instead manual validation (diff)
Check is user already admin before adding
Diffstat (limited to 'backend/routes/admin.py')
-rw-r--r--backend/routes/admin.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/backend/routes/admin.py b/backend/routes/admin.py
index 08e97ce..ff329fa 100644
--- a/backend/routes/admin.py
+++ b/backend/routes/admin.py
@@ -32,5 +32,10 @@ class AdminRoute(Route):
data = await request.json()
admin = AdminModel(**data)
+ if await request.state.db.admins.find_one(
+ {"_id": admin.id}
+ ):
+ return JSONResponse({"error": "already_exists"}, status_code=400)
+
await request.state.db.admins.insert_one(admin.dict(by_alias=True))
return JSONResponse({"status": "ok"})