Update src/api/admin.py
Browse files- src/api/admin.py +9 -2
src/api/admin.py
CHANGED
|
@@ -67,7 +67,10 @@ def _cleanup_sessions() -> None:
|
|
| 67 |
expired = [t for t, exp in list(admin_sessions.items()) if exp <= now]
|
| 68 |
for t in expired:
|
| 69 |
admin_sessions.pop(t, None)
|
| 70 |
-
|
|
|
|
|
|
|
|
|
|
| 71 |
|
| 72 |
|
| 73 |
def _require_session(request: Request) -> None:
|
|
@@ -448,7 +451,10 @@ setInterval(loadRecentQueries, 60000);
|
|
| 448 |
@router.get("/public-config")
|
| 449 |
async def public_config():
|
| 450 |
"""Public endpoint — no auth required. Returns safe fields for the frontend."""
|
| 451 |
-
|
|
|
|
|
|
|
|
|
|
| 452 |
return {
|
| 453 |
"welcome_message": cfg.get("welcome_message", ""),
|
| 454 |
"announcement": cfg.get("announcement", ""),
|
|
@@ -457,6 +463,7 @@ async def public_config():
|
|
| 457 |
}
|
| 458 |
|
| 459 |
|
|
|
|
| 460 |
@router.get("/config")
|
| 461 |
async def get_config(request: Request):
|
| 462 |
_require_session(request)
|
|
|
|
| 67 |
expired = [t for t, exp in list(admin_sessions.items()) if exp <= now]
|
| 68 |
for t in expired:
|
| 69 |
admin_sessions.pop(t, None)
|
| 70 |
+
try:
|
| 71 |
+
_load_sessions()
|
| 72 |
+
except Exception:
|
| 73 |
+
pass
|
| 74 |
|
| 75 |
|
| 76 |
def _require_session(request: Request) -> None:
|
|
|
|
| 451 |
@router.get("/public-config")
|
| 452 |
async def public_config():
|
| 453 |
"""Public endpoint — no auth required. Returns safe fields for the frontend."""
|
| 454 |
+
try:
|
| 455 |
+
cfg = _load_config()
|
| 456 |
+
except Exception:
|
| 457 |
+
cfg = {}
|
| 458 |
return {
|
| 459 |
"welcome_message": cfg.get("welcome_message", ""),
|
| 460 |
"announcement": cfg.get("announcement", ""),
|
|
|
|
| 463 |
}
|
| 464 |
|
| 465 |
|
| 466 |
+
|
| 467 |
@router.get("/config")
|
| 468 |
async def get_config(request: Request):
|
| 469 |
_require_session(request)
|