23 lines
No EOL
856 B
Python
23 lines
No EOL
856 B
Python
from fastapi import APIRouter, HTTPException
|
|
from fastapi.responses import HTMLResponse
|
|
from config import EPT_DIR
|
|
from services.manifest import read_manifest
|
|
from services.html_generator import generate_viewer_html
|
|
|
|
router = APIRouter()
|
|
|
|
@router.get("/viewer/{pc_id}")
|
|
def viewer(pc_id: str):
|
|
out_dir = EPT_DIR / pc_id
|
|
if not out_dir.exists():
|
|
raise HTTPException(404, f"ID {pc_id} non trouvé")
|
|
manifest = read_manifest(out_dir)
|
|
return HTMLResponse(generate_viewer_html(pc_id, manifest.get("ept_dir"), embed=False))
|
|
|
|
@router.get("/viewer-embed/{pc_id}")
|
|
def viewer_embed(pc_id: str):
|
|
out_dir = EPT_DIR / pc_id
|
|
if not out_dir.exists():
|
|
raise HTTPException(404, f"ID {pc_id} non trouvé")
|
|
manifest = read_manifest(out_dir)
|
|
return HTMLResponse(generate_viewer_html(pc_id, manifest.get("ept_dir"), embed=True)) |