Add mock options in frontend and removed from environment variables
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
from typing import Optional
|
||||
|
||||
from fastapi import APIRouter, Depends
|
||||
from pydantic import BaseModel
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
from core.auth import encrypt_secret
|
||||
@@ -38,3 +39,36 @@ async def upsert_credential(
|
||||
db.commit()
|
||||
db.refresh(cred)
|
||||
return CredentialRead(id=cred.id, username=cred.username)
|
||||
|
||||
|
||||
# ── Mock AVConnect setting ─────────────────────────────────────────────────────
|
||||
|
||||
class MockSettingResponse(BaseModel):
|
||||
enabled: bool
|
||||
|
||||
|
||||
class MockSettingRequest(BaseModel):
|
||||
enabled: bool
|
||||
|
||||
|
||||
@router.get("/mock", response_model=MockSettingResponse)
|
||||
async def get_mock_setting(
|
||||
db: Session = Depends(get_db), _: dict = Depends(require_admin)
|
||||
):
|
||||
cred: Optional[ApiCredential] = db.query(ApiCredential).first()
|
||||
return MockSettingResponse(enabled=bool(cred.mock_avconnect) if cred else False)
|
||||
|
||||
|
||||
@router.put("/mock", response_model=MockSettingResponse)
|
||||
async def set_mock_setting(
|
||||
req: MockSettingRequest,
|
||||
db: Session = Depends(get_db),
|
||||
_: dict = Depends(require_admin),
|
||||
):
|
||||
cred: Optional[ApiCredential] = db.query(ApiCredential).first()
|
||||
if not cred:
|
||||
from fastapi import HTTPException
|
||||
raise HTTPException(503, "AVConnect credentials not configured")
|
||||
cred.mock_avconnect = req.enabled
|
||||
db.commit()
|
||||
return MockSettingResponse(enabled=req.enabled)
|
||||
|
||||
Reference in New Issue
Block a user