"""Web page routes for dashboard and config page.""" from fastapi import APIRouter, Request from fastapi.responses import HTMLResponse, RedirectResponse from fastapi.templating import Jinja2Templates from utils.auth import check_auth router = APIRouter() templates = Jinja2Templates(directory="templates") @router.get("/login", response_class=HTMLResponse) async def login_page(request: Request): #Login page # If already authenticated, redirect to dashboard if check_auth(request): return RedirectResponse(url="/", status_code=302) return templates.TemplateResponse("login.html", {"request": request}) @router.get("/", response_class=HTMLResponse) async def dashboard(request: Request): #Dashboard page - requires authentication if not check_auth(request): return RedirectResponse(url="/login", status_code=302) print(">>> DASHBOARD ROUTE LOADED") return templates.TemplateResponse("dashboard.html", {"request": request}) @router.get("/config", response_class=HTMLResponse) async def config_page(request: Request): #Config page - requires authentication if not check_auth(request): return RedirectResponse(url="/login", status_code=302) return templates.TemplateResponse("config.html", {"request": request}) @router.get("/users-log", response_class=HTMLResponse) async def users_log_page(request: Request): #Users/Log page - requires authentication if not check_auth(request): return RedirectResponse(url="/login", status_code=302) return templates.TemplateResponse("users_log.html", {"request": request})