cestina, UI, UX

This commit is contained in:
JiriUhlir
2026-05-29 11:34:07 +02:00
parent d145161e4e
commit 6109bdfe61
11 changed files with 354 additions and 131 deletions
+15 -9
View File
@@ -2,6 +2,8 @@ import html
from ..config import PORTAL_PREFIX
APP_NAME = "CSBot Services Portal"
def page(title: str, body: str, user=None) -> str:
nav = ""
@@ -12,13 +14,17 @@ def page(title: str, body: str, user=None) -> str:
display_name = html.escape(user.get("display_name") or user.get("username", ""))
nav = """
<nav>
<a href="/portal/operations">Dashboard</a>
<a href="/portal">Apps</a>
<a href="/portal/jobs">Jobs</a>
<a href="/portal/deployments">Deployments</a>
<a href="/portal/workers">Workers</a>
<span class="nav-group">Přehled</span>
<a href="/portal/operations">Přehled</a>
<span class="nav-group">Služby</span>
<a href="/portal/apps">Služby</a>
<span class="nav-group">Provoz</span>
<a href="/portal/jobs">Úlohy</a>
<a href="/portal/deployments">Nasazení</a>
<a href="/portal/workers">Workery</a>
<span class="nav-group">Správa</span>
<a href="/portal/audit">Audit</a>
<a href="/portal/backups">Backups</a>
<a href="/portal/backups">Zálohy</a>
</nav>
"""
user_panel = f"""
@@ -34,15 +40,15 @@ def page(title: str, body: str, user=None) -> str:
return f"""
<html>
<head>
<title>{html.escape(title)}</title>
<title>{html.escape(title)} | {APP_NAME}</title>
<link rel="stylesheet" href="{PORTAL_PREFIX}/static/styles.css">
<script src="{PORTAL_PREFIX}/static/portal.js"></script>
</head>
<body>
<header>
<a class="brand" href="/portal" aria-label="AppFactory Portal">
<a class="brand" href="/portal/operations" aria-label="{APP_NAME}">
<img src="{PORTAL_PREFIX}/static/csbot-logo.svg" alt="CSBOT">
<span>AppFactory</span>
<span>{APP_NAME}</span>
</a>
{nav}
{user_panel}