update time filtering
This commit is contained in:
+33
-6
@@ -608,10 +608,21 @@ def delete_room(
|
||||
@app.get(
|
||||
"/rooms/{room_id}/events",
|
||||
summary="Get room events",
|
||||
description="Returns all events belonging to a room. The authenticated user must be a member.",
|
||||
description="Returns events belonging to a room, optionally filtered by date.",
|
||||
)
|
||||
|
||||
def api_room_events(
|
||||
room_id: int,
|
||||
date_from: str | None = Query(
|
||||
None,
|
||||
alias="from",
|
||||
description="Only return events starting on or after this date.",
|
||||
),
|
||||
date_to: str | None = Query(
|
||||
None,
|
||||
alias="to",
|
||||
description="Only return events starting on or before this date.",
|
||||
),
|
||||
user_id: int = Depends(get_current_user),
|
||||
):
|
||||
if not has_role(room_id, user_id, "member"):
|
||||
@@ -620,13 +631,16 @@ def api_room_events(
|
||||
detail="room member permission required",
|
||||
)
|
||||
|
||||
events = get_room_events(room_id)
|
||||
events = get_room_events(
|
||||
room_id,
|
||||
date_from,
|
||||
date_to,
|
||||
)
|
||||
|
||||
return {
|
||||
"events": [dict(event) for event in events],
|
||||
}
|
||||
|
||||
|
||||
@app.post(
|
||||
"/events",
|
||||
summary="Create an event",
|
||||
@@ -660,16 +674,29 @@ def api_create_event(
|
||||
"event_id": event_id,
|
||||
}
|
||||
|
||||
|
||||
@app.get(
|
||||
"/events",
|
||||
summary="Get user's events",
|
||||
description="Returns events from rooms the authenticated user belongs to.",
|
||||
description="Returns events from rooms the authenticated user belongs to, optionally filtered by date.",
|
||||
)
|
||||
def get_events(
|
||||
date_from: str | None = Query(
|
||||
None,
|
||||
alias="from",
|
||||
description="Only return events starting on or after this date.",
|
||||
),
|
||||
date_to: str | None = Query(
|
||||
None,
|
||||
alias="to",
|
||||
description="Only return events starting on or before this date.",
|
||||
),
|
||||
user_id: int = Depends(get_current_user),
|
||||
):
|
||||
events = get_user_events(user_id)
|
||||
events = get_user_events(
|
||||
user_id,
|
||||
date_from,
|
||||
date_to,
|
||||
)
|
||||
|
||||
return {
|
||||
"events": [dict(event) for event in events],
|
||||
|
||||
Reference in New Issue
Block a user