fexed test ui

This commit is contained in:
ValueOn AG 2026-02-06 10:38:02 +01:00
parent d05204c394
commit edf1101cfc
3 changed files with 12 additions and 6 deletions

6
app.py
View file

@ -664,6 +664,12 @@ async def _loginPage(request: Request):
"""Login page.""" """Login page."""
return templates.TemplateResponse("login.html", {"request": request}) return templates.TemplateResponse("login.html", {"request": request})
@app.get("/logout", response_class=HTMLResponse, tags=["Web UI"])
async def _logout(request: Request):
"""Logout - redirect to login page."""
from starlette.responses import RedirectResponse
return RedirectResponse(url="/login", status_code=302)
# ============================================================================ # ============================================================================
# Main # Main
# ============================================================================ # ============================================================================

View file

@ -4,7 +4,7 @@
<meta charset="UTF-8"> <meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Belegscanner PowerOn</title> <title>Belegscanner PowerOn</title>
<link rel="icon" type="image/png" href="{{ url_for('static', filename='favicon.png') }}"> <link rel="icon" type="image/png" href="/static/favicon.png">
<style> <style>
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,700&family=JetBrains+Mono:wght@400;500&display=swap'); @import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,700&family=JetBrains+Mono:wght@400;500&display=swap');
@ -634,13 +634,13 @@
<div> <div>
<div class="logo"> <div class="logo">
<div class="logo-icon"> <div class="logo-icon">
<img src="{{ url_for('static', filename='poweron-logo.png') }}" alt="Poweron"> <img src="/static/poweron-logo.png" alt="Poweron">
</div> </div>
<h1>Belegscanner</h1> <h1>Belegscanner</h1>
</div> </div>
<p class="subtitle">KI-gestützte Dokumentenanalyse</p> <p class="subtitle">KI-gestützte Dokumentenanalyse</p>
</div> </div>
<a href="{{ url_for('_logout') }}" class="btn btn-secondary btn-small" style="text-decoration: none;">Abmelden</a> <a href="/logout" class="btn btn-secondary btn-small" style="text-decoration: none;">Abmelden</a>
</div> </div>
</header> </header>

View file

@ -4,7 +4,7 @@
<meta charset="UTF-8"> <meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Login Belegscanner</title> <title>Login Belegscanner</title>
<link rel="icon" type="image/png" href="{{ url_for('static', filename='favicon.png') }}"> <link rel="icon" type="image/png" href="/static/favicon.png">
<style> <style>
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,700&family=JetBrains+Mono:wght@400;500&display=swap'); @import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,700&family=JetBrains+Mono:wght@400;500&display=swap');
@ -191,7 +191,7 @@
<div class="login-card"> <div class="login-card">
<div class="logo"> <div class="logo">
<div class="logo-icon"> <div class="logo-icon">
<img src="{{ url_for('static', filename='poweron-logo.png') }}" alt="Poweron"> <img src="/static/poweron-logo.png" alt="Poweron">
</div> </div>
<h1>Belegscanner</h1> <h1>Belegscanner</h1>
<p class="subtitle">Bitte melden Sie sich an</p> <p class="subtitle">Bitte melden Sie sich an</p>
@ -201,7 +201,7 @@
<div class="error-message">{{ error }}</div> <div class="error-message">{{ error }}</div>
{% endif %} {% endif %}
<form method="POST" action="{{ url_for('_login') }}"> <form method="POST" action="/login">
<div class="form-group"> <div class="form-group">
<label for="username">Benutzername</label> <label for="username">Benutzername</label>
<input type="text" id="username" name="username" required autofocus> <input type="text" id="username" name="username" required autofocus>