Files
allmende-payment-system/src/allmende_payment_system/templates/base.html.jinja
2026-01-17 12:29:47 +01:00

83 lines
4.4 KiB
Django/Jinja

<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Allmende Bezahlsystem</title>
<!-- Bootstrap 5 CSS -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.8/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-sRIl4kxILFvY47J16cr9ZwB07vP4J8+LH7qKQnuqkuIAvNWLzeN8tE5YBujZqJLB" crossorigin="anonymous">
<link href="/static/css/aps.css" rel="stylesheet">
</head>
<body>
<div class="container-fluid">
<div class="row">
<!-- Left Sidebar (always visible, stacks on mobile) -->
<div class="col-md-3 col-lg-2 p-0 sidebar">
<div class="d-flex flex-column p-3">
<a href="/" class="navbar-brand d-flex align-items-center mb-4">
<img src="/static/img/Logo.png" alt="Logo" class="me-2">
<span class="fs-4">APS</span>
</a>
<ul class="nav nav-pills flex-column mb-auto">
<li class="nav-item">
<a href="/" class="nav-link{% if request.url.path == "/"%} active{% endif %}">
Übersicht
</a>
</li>
<li class="nav-item">
<a href="/shop" class="nav-link{% if request.url.path.startswith("/shop")%} active{% endif %}">
Einkaufen
</a>
</li>
{% if request.state.user.has_permission("product", "edit") %}
<li class="nav-item">
<a href="/admin/products" class="nav-link{% if request.url.path.startswith("/admin/products")%} active{% endif %}">
Produktverwaltung
</a>
</li>
{% endif %}
{% if request.state.user.has_permission("user", "edit") %}
<li class="nav-item">
<a href="/admin/users" class="nav-link{% if request.url.path.startswith("/admin/users")%} active{% endif %}">
Nutzerverwaltung
</a>
</li>
<li class="nav-item">
<a href="/admin/groups" class="nav-link{% if request.url.path.startswith("/admin/groups")%} active{% endif %}">
Gruppenverwaltung
</a>
</li>
{% endif %}
</ul>
<!-- Shopping Cart at Bottom -->
<div class="mt-auto pt-3 border-top">
<a href="/shop/cart" class="btn btn-primary w-100 position-relative">
<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor" class="bi bi-cart3 me-2" viewBox="0 0 16 16">
<path d="M0 1.5A.5.5 0 0 1 .5 1H2a.5.5 0 0 1 .485.379L2.89 3H14.5a.5.5 0 0 1 .49.598l-1 5a.5.5 0 0 1-.465.401l-9.397.472L4.415 11H13a.5.5 0 0 1 0 1H4a.5.5 0 0 1-.491-.408L2.01 3.607 1.61 2H.5a.5.5 0 0 1-.5-.5M3.102 4l.84 4.479 9.144-.459L13.89 4zM5 12a2 2 0 1 0 0 4 2 2 0 0 0 0-4m7 0a2 2 0 1 0 0 4 2 2 0 0 0 0-4m-7 1a1 1 0 1 1 0 2 1 1 0 0 1 0-2m7 0a1 1 0 1 1 0 2 1 1 0 0 1 0-2"/>
</svg>
Warenkorb
<span class="position-absolute top-0 start-100 translate-middle badge rounded-pill bg-danger">
{{ request.state.user.shopping_cart.items|length }}
<span class="visually-hidden">Artikel im Warenkorb</span>
</span>
</a>
</div>
</div>
</div>
<!-- Main Content -->
<main class="col-md-9 ms-sm-auto col-lg-10 p-md-4 main-content">
{% block content %}
{% endblock %}
</main>
</div>
</div>
<!-- Bootstrap 5 JS Bundle with Popper -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.8/dist/js/bootstrap.bundle.min.js" integrity="sha384-FKyoEForCGlyvwx9Hj09JcYn3nv7wiPVlz7YYwJrWVcXK/BmnVDxM+D2scQbITxI" crossorigin="anonymous"></script>
</body>
</html>