25 lines
906 B
Python
25 lines
906 B
Python
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},
|
|
)
|