diff --git a/backend/app/routers/admin/events.py b/backend/app/routers/admin/events.py index 86514bd..a731b20 100644 --- a/backend/app/routers/admin/events.py +++ b/backend/app/routers/admin/events.py @@ -1,5 +1,6 @@ """Admin calendar event CRUD routes. +GET /api/admin/events — list all events, including unpublished ones POST /api/admin/events — create event; created_by set from JWT PUT /api/admin/events/{id} — update event fields DELETE /api/admin/events/{id} — delete event (admin role required) @@ -25,6 +26,16 @@ ) +@router.get("", response_model=list[AdminCalendarEventDTO]) +def list_admin_events( + _current_user: Admin = Depends(get_current_user), + db: Session = Depends(get_db), +): + """List all calendar events, including unpublished ones.""" + events = db.query(CalendarEvent).order_by(CalendarEvent.start_datetime).all() + return [AdminCalendarEventDTO.model_validate(e) for e in events] + + @router.post("", response_model=AdminCalendarEventDTO, status_code=status.HTTP_201_CREATED) def create_admin_event( body: CreateAdminCalendarEventDTO,