Revert "Handle FAQ status update without request body"

This commit is contained in:
Egor
2025-12-10 02:08:51 +03:00
committed by GitHub
parent 3222c82b46
commit 2743a845bd

View File

@@ -2,16 +2,7 @@ from __future__ import annotations
from typing import Any, List, Optional
from fastapi import (
APIRouter,
Body,
Depends,
HTTPException,
Query,
Response,
Security,
status,
)
from fastapi import APIRouter, Depends, HTTPException, Query, Response, Security, status
from sqlalchemy.ext.asyncio import AsyncSession
from app.config import settings
@@ -401,26 +392,15 @@ async def get_faq_status(
@router.put("/faq/status", response_model=FaqStatusResponse)
async def update_faq_status(
payload: Optional[FaqStatusUpdateRequest] = Body(None),
language: str = Query("ru", min_length=2, max_length=10),
is_enabled: Optional[bool] = Query(None),
payload: FaqStatusUpdateRequest,
_: object = Security(require_api_token),
db: AsyncSession = Depends(get_db_session),
) -> FaqStatusResponse:
resolved_language = FaqService.normalize_language(
payload.language if payload and payload.language else language
)
enabled_status = payload.is_enabled if payload else is_enabled
if enabled_status is None:
raise HTTPException(
status.HTTP_400_BAD_REQUEST, "Parameter 'is_enabled' is required"
)
setting = await FaqService.set_enabled(db, resolved_language, enabled_status)
lang = FaqService.normalize_language(payload.language)
setting = await FaqService.set_enabled(db, lang, payload.is_enabled)
return FaqStatusResponse(
requested_language=resolved_language,
requested_language=lang,
language=setting.language,
is_enabled=bool(setting.is_enabled),
)