first commit
🚀 Deploy — JH Photomaton / 🔍 Vérification (push) Has been cancelled
🚀 Deploy — JH Photomaton / 🍓 Deploy sur le Pi (push) Has been cancelled

This commit is contained in:
2026-07-16 00:55:29 +02:00
commit 209f81aa3d
100 changed files with 17682 additions and 0 deletions
+19
View File
@@ -0,0 +1,19 @@
"""Authentification admin — session cookie simple."""
from functools import wraps
from fastapi import Request
from fastapi.responses import RedirectResponse
def is_authenticated(request: Request) -> bool:
return request.session.get("authenticated") is True
def require_auth(func):
"""Décorateur pour les routes admin."""
@wraps(func)
async def wrapper(request: Request, *args, **kwargs):
if not is_authenticated(request):
return RedirectResponse(url="/admin/login", status_code=302)
return await func(request, *args, **kwargs)
return wrapper