castle/views.py
padreug d7354556c3 Adds admin permissions management page
Implements an admin permissions management page.

This change allows superusers to manage permissions directly from the castle interface, providing a more streamlined experience for administrative tasks.
2025-11-07 18:05:30 +01:00

33 lines
971 B
Python

from fastapi import APIRouter, Depends, Request
from fastapi.responses import HTMLResponse
from lnbits.core.models import User
from lnbits.decorators import check_user_exists
from lnbits.helpers import template_renderer
castle_generic_router = APIRouter(tags=["castle"])
@castle_generic_router.get(
"/", description="Castle accounting home page", response_class=HTMLResponse
)
async def index(
request: Request,
user: User = Depends(check_user_exists),
):
return template_renderer(["castle/templates"]).TemplateResponse(
request, "castle/index.html", {"user": user.json()}
)
@castle_generic_router.get(
"/permissions",
description="Permission management page",
response_class=HTMLResponse,
)
async def permissions(
request: Request,
user: User = Depends(check_user_exists),
):
return template_renderer(["castle/templates"]).TemplateResponse(
request, "castle/permissions.html", {"user": user.json()}
)