diff --git a/kontor-api/src/templates/components/navbar.html b/kontor-api/src/templates/components/navbar.html index 2d037e7..24f428f 100644 --- a/kontor-api/src/templates/components/navbar.html +++ b/kontor-api/src/templates/components/navbar.html @@ -12,9 +12,7 @@ Home + diff --git a/kontor-api/src/templates/media/files.html b/kontor-api/src/templates/media/files.html new file mode 100644 index 0000000..3fb77a8 --- /dev/null +++ b/kontor-api/src/templates/media/files.html @@ -0,0 +1,29 @@ +{% extends "shared/base.html" %} + +{% block title %} + MediaFiles List +{% endblock %} + +{% block content %} + {% with msg=msg %} + {% include "components/alerts.html" %} + {% endwith %} +
+ + + + + + + + {% for mediafile in mediafiles %} + + + + + + {% endfor %} + +
TitelURLCloudlink
{{mediafile.title}}{{mediafile.url}}{{mediafile.cloud_link}}
+
+{% endblock %} diff --git a/kontor-api/src/webapps/base.py b/kontor-api/src/webapps/base.py index 022ea9a..24b16cf 100644 --- a/kontor-api/src/webapps/base.py +++ b/kontor-api/src/webapps/base.py @@ -2,11 +2,13 @@ from fastapi import APIRouter, Request from fastapi.templating import Jinja2Templates from src.webapps.comic import route_comics +from src.webapps.media import route_media templates = Jinja2Templates(directory="src/templates") api_router = APIRouter() api_router.include_router(route_comics.router) +api_router.include_router(route_media.router) @api_router.get("/") def home(request: Request, msg: str = None): diff --git a/kontor-api/src/webapps/media/route_media.py b/kontor-api/src/webapps/media/route_media.py new file mode 100644 index 0000000..602690f --- /dev/null +++ b/kontor-api/src/webapps/media/route_media.py @@ -0,0 +1,32 @@ +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): + mediaactor = db.get(MediaActor, actor_id) + return templates.TemplateResponse("media/artist_detail.html", {"request": request, "mediaactor": mediaactor}) +