Add support for voting on Question
This commit is contained in:
parent
4046fa0506
commit
d67a44bb59
8 changed files with 187 additions and 6 deletions
21
app/admin.py
21
app/admin.py
|
@ -6,6 +6,7 @@ from fastapi import Request
|
|||
from fastapi import UploadFile
|
||||
from fastapi.exceptions import HTTPException
|
||||
from fastapi.responses import RedirectResponse
|
||||
from loguru import logger
|
||||
from sqlalchemy import func
|
||||
from sqlalchemy import select
|
||||
from sqlalchemy.orm import joinedload
|
||||
|
@ -683,6 +684,26 @@ async def admin_actions_new(
|
|||
)
|
||||
|
||||
|
||||
@router.post("/actions/vote")
|
||||
async def admin_actions_vote(
|
||||
request: Request,
|
||||
redirect_url: str = Form(),
|
||||
in_reply_to: str = Form(),
|
||||
csrf_check: None = Depends(verify_csrf_token),
|
||||
db_session: AsyncSession = Depends(get_db_session),
|
||||
) -> RedirectResponse:
|
||||
form_data = await request.form()
|
||||
names = form_data.getlist("name")
|
||||
logger.info(f"{names=}")
|
||||
for name in names:
|
||||
await boxes.send_vote(
|
||||
db_session,
|
||||
in_reply_to=in_reply_to,
|
||||
name=name,
|
||||
)
|
||||
return RedirectResponse(redirect_url, status_code=302)
|
||||
|
||||
|
||||
@unauthenticated_router.get("/login")
|
||||
async def login(
|
||||
request: Request,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue