app.py auf APIRouter-Module umgestellt (db.py, templating.py, anode_client.py, auth.py, routers/geraete.py + vier Admin-Router als Platzhalter). benutzer.ist_admin (Migration 0002) + require_admin- Dependency (403 ohne Admin-Flag). Admin-Nav-Link im Header nur für Admin-Konten sichtbar. create_user.py um --admin-Flag erweitert. Die vier Admin-Bereiche (Technik/Datenbank, Geräte, Flows, Kunden) sind als Platzhalterseiten unter /admin/... verdrahtet und bekommen in den nächsten Schritten echte Funktionalität. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
23 lines
768 B
Python
23 lines
768 B
Python
import os
|
|
|
|
from fastapi import FastAPI
|
|
from fastapi.staticfiles import StaticFiles
|
|
from starlette.middleware.sessions import SessionMiddleware
|
|
|
|
import auth
|
|
from routers import admin_flows, admin_geraete, admin_kunden, admin_technik, geraete
|
|
|
|
|
|
SESSION_SECRET = os.environ.get("KUNDENPLATTFORM_SESSION_SECRET", "")
|
|
|
|
app = FastAPI(title="Tuxflotte Kundenplattform")
|
|
app.add_middleware(SessionMiddleware, secret_key=SESSION_SECRET, session_cookie="kundenplattform_session")
|
|
app.mount("/static", StaticFiles(directory="static"), name="static")
|
|
|
|
app.include_router(auth.router)
|
|
app.include_router(geraete.router)
|
|
app.include_router(admin_technik.router)
|
|
app.include_router(admin_geraete.router)
|
|
app.include_router(admin_flows.router)
|
|
app.include_router(admin_kunden.router)
|