diff --git a/members_lumbung_space/main.py b/members_lumbung_space/main.py index e924c70..9ea7c08 100644 --- a/members_lumbung_space/main.py +++ b/members_lumbung_space/main.py @@ -21,7 +21,14 @@ from members_lumbung_space.keycloak import init_keycloak from members_lumbung_space.nextcloud import init_resource_map from members_lumbung_space.oidc import init_oidc from members_lumbung_space.redis import Redis, init_redis -from members_lumbung_space.routes import health, invite, oidc, register, root +from members_lumbung_space.routes import ( + health, + invite, + oidc, + register, + resource, + root, +) log = logging.getLogger("uvicorn") log.setLevel(APP_LOG_LEVEL) @@ -73,3 +80,4 @@ app.include_router(oidc.router) app.include_router(register.router) app.include_router(root.router) app.include_router(health.router) +app.include_router(resource.router) diff --git a/members_lumbung_space/routes/resource.py b/members_lumbung_space/routes/resource.py new file mode 100644 index 0000000..f279fbe --- /dev/null +++ b/members_lumbung_space/routes/resource.py @@ -0,0 +1,16 @@ +"""Resource map routes.""" + +from fastapi import APIRouter, Depends, Request +from fastapi.responses import RedirectResponse + +from members_lumbung_space.dependencies import logged_in + +router = APIRouter() + + +@router.get("/resource/generate", dependencies=[Depends(logged_in)]) +async def generate_resource_map(request: Request): + from members_lumbung_space.nextcloud import init_resource_map + + await init_resource_map(request.app) + return RedirectResponse(request.url_for("home")) diff --git a/members_lumbung_space/templates/admin.html b/members_lumbung_space/templates/admin.html index 9b55dab..67d6d48 100644 --- a/members_lumbung_space/templates/admin.html +++ b/members_lumbung_space/templates/admin.html @@ -48,8 +48,15 @@

Resource map

-

(i have no idea how to render this)

+ +

+ Regenerate +

+ +

(PS. i have no idea how to render this)

+

{{ resource_map }}
+
{% endblock %}