add check is_admin route
This commit is contained in:
@ -142,6 +142,24 @@ class AuthService:
|
||||
|
||||
user = await users_collection.find_one({"uuid": session["user_uuid"]})
|
||||
return user and user.get("is_admin") is True
|
||||
|
||||
async def get_current_user(self, access_token: str, client_token: str):
|
||||
session = await sessions_collection.find_one({
|
||||
"access_token": access_token,
|
||||
"client_token": client_token,
|
||||
})
|
||||
if not session:
|
||||
raise HTTPException(status_code=401, detail="Invalid session")
|
||||
|
||||
user = await users_collection.find_one({"uuid": session["user_uuid"]})
|
||||
if not user:
|
||||
raise HTTPException(status_code=404, detail="User not found")
|
||||
|
||||
return {
|
||||
"username": user["username"],
|
||||
"uuid": user["uuid"],
|
||||
"is_admin": user.get("is_admin", False),
|
||||
}
|
||||
|
||||
async def refresh(self, access_token: str, client_token: str):
|
||||
if not await self.validate(access_token, client_token):
|
||||
|
||||
Reference in New Issue
Block a user