update endopoints
This commit is contained in:
@@ -16,6 +16,10 @@ from typing import Literal
|
||||
from fastapi.middleware.cors import CORSMiddleware
|
||||
|
||||
from events import delete_event, get_room_events
|
||||
from rooms import regenerate_invite_code
|
||||
|
||||
class InviteCodeUpdate(BaseModel):
|
||||
invite_code: str
|
||||
|
||||
class Login(BaseModel):
|
||||
username: str
|
||||
@@ -262,6 +266,23 @@ def api_join_room(
|
||||
**result
|
||||
}
|
||||
|
||||
@app.post("/rooms/{room_id}/invite-code")
|
||||
def update_invite_code(
|
||||
room_id: int,
|
||||
data: InviteCodeUpdate,
|
||||
user_id: int = Depends(get_current_user)
|
||||
):
|
||||
if not has_role(room_id, user_id, ["owner", "admin"]):
|
||||
return {
|
||||
"status": "denied",
|
||||
"reason": "no_permission"
|
||||
}
|
||||
|
||||
return regenerate_invite_code(
|
||||
room_id,
|
||||
data.invite_code
|
||||
)
|
||||
|
||||
# events
|
||||
|
||||
@app.post("/events")
|
||||
|
||||
@@ -278,4 +278,23 @@ def change_room_name(room_id, new_name, user_id):
|
||||
"new_name": new_name,
|
||||
"room_id": room_id,
|
||||
"updated_by": user_id
|
||||
}
|
||||
|
||||
def regenerate_invite_code(room_id, new_code):
|
||||
execute(
|
||||
"""
|
||||
UPDATE rooms
|
||||
SET invite_code = ?
|
||||
WHERE id = ?
|
||||
""",
|
||||
(
|
||||
new_code,
|
||||
room_id
|
||||
)
|
||||
)
|
||||
|
||||
return {
|
||||
"status": "updated",
|
||||
"room_id": room_id,
|
||||
"invite_code": new_code
|
||||
}
|
||||
Reference in New Issue
Block a user