# Copyright (c) 2025 Patrick Motsch # All rights reserved. """Web UI routes for the Private-LLM test interface.""" import logging from fastapi import APIRouter, Request from fastapi.responses import HTMLResponse from fastapi.templating import Jinja2Templates from starlette.responses import RedirectResponse logger = logging.getLogger(__name__) templates = Jinja2Templates(directory="templates") router = APIRouter(tags=["Web UI"]) @router.get("/", response_class=HTMLResponse) async def _index(request: Request): """Main page with document scanner UI.""" return templates.TemplateResponse("index.html", {"request": request}) @router.get("/login", response_class=HTMLResponse) async def _loginPage(request: Request): """Login page.""" return templates.TemplateResponse("login.html", {"request": request}) @router.get("/logout", response_class=HTMLResponse) async def _logout(request: Request): """Logout - redirect to login page.""" return RedirectResponse(url="/login", status_code=302)