from uuid import UUID from fastapi import APIRouter, Request from fastapi.templating import Jinja2Templates from src.apis.utils import SessionDep from src.db.models.media import MediaFile, MediaActor #ifrom src.schema.media.comic import get_comic_details templates = Jinja2Templates(directory="src/templates") router = APIRouter(include_in_schema=False, prefix="/media") @router.get("/files") def get_mediafiles(db: SessionDep, request: Request, msg: str = None): mediafiles = db.query(MediaFile).all() return templates.TemplateResponse("media/files.html", {"request": request, "msg": msg, "mediafiles": mediafiles}) @router.get("/files/{file_id}") def file_details(file_id: UUID, request: Request, db: SessionDep): mediafile = db.get(MediaFile, file_id) return templates.TemplateResponse("media/file_detail.html", {"request": request, "mediafile":mediafile}) @router.get("/actors") def get_actors(db: SessionDep, request: Request, msg: str = None): actors = db.query(MediaActor).all() return templates.TemplateResponse("media/actors.html", {"request": request, "msg": msg, "actors": actors}) @router.get("/actors/{actor_id}") def artist_detail(actor_id: UUID, request: Request, db: SessionDep): actor = db.get(MediaActor, actor_id) return templates.TemplateResponse("media/actor_detail.html", {"request": request, "actor": actor})