diff --git a/backend/events.py b/backend/events.py index 66b1a1f..1936d82 100644 --- a/backend/events.py +++ b/backend/events.py @@ -135,11 +135,11 @@ def update_event( description, start_time, end_time, - min_people + min_people, + event_type, + visibility, + status, ): - - from database import execute - execute( """ UPDATE events @@ -148,7 +148,10 @@ def update_event( description = COALESCE(?, description), start_time = COALESCE(?, start_time), end_time = COALESCE(?, end_time), - min_people = COALESCE(?, min_people) + min_people = COALESCE(?, min_people), + type = COALESCE(?, type), + visibility = COALESCE(?, visibility), + status = COALESCE(?, status) WHERE id = ? """, ( @@ -157,10 +160,13 @@ def update_event( start_time, end_time, min_people, - event_id - ) + event_type, + visibility, + status, + event_id, + ), ) - + def get_room_events(room_id): from database import fetch_all diff --git a/backend/main.py b/backend/main.py index 5c5d40b..2733920 100644 --- a/backend/main.py +++ b/backend/main.py @@ -90,6 +90,9 @@ class EventUpdate(BaseModel): start_time: str | None = None end_time: str | None = None min_people: int | None = None + type: str | None = None + visibility: str | None = None + status: str | None = None class RoomCreate(BaseModel): @@ -108,7 +111,6 @@ class RoomJoin(BaseModel): class RoomUpdate(BaseModel): new_name: str - app = FastAPI( title="Calendar API", description="Room based agenda system", @@ -864,6 +866,11 @@ def api_event_responses( } +@app.patch( + "/events/{event_id}", + summary="Update an event", + description="Updates an event. The event creator or a room admin can perform this action.", +) @app.patch( "/events/{event_id}", summary="Update an event", @@ -903,6 +910,9 @@ def api_update_event( event.start_time, event.end_time, event.min_people, + event.type, + event.visibility, + event.status, ) return {