from fastapi import APIRouter, Depends, Request from fastapi.responses import HTMLResponse from admin.auth import require_admin from admin.templates_env import templates from database.queries.message_log import get_chat_list, get_message_log router = APIRouter(prefix="/chat-log", dependencies=[Depends(require_admin)]) @router.get("", response_class=HTMLResponse) async def chat_list(request: Request): chats = await get_chat_list() return templates.TemplateResponse( "chat_log/list.html", {"request": request, "chats": chats} ) @router.get("/{max_user_id}", response_class=HTMLResponse) async def chat_history(request: Request, max_user_id: int): messages = await get_message_log(max_user_id=max_user_id, limit=200) return templates.TemplateResponse( "chat_log/history.html", {"request": request, "messages": messages, "max_user_id": max_user_id}, )