feat: add persistent badges and admin badge page

This commit is contained in:
2026-04-13 10:19:38 +02:00
parent 3c99c3683e
commit c36abe82a8
27 changed files with 576 additions and 100 deletions

View File

@@ -2,6 +2,32 @@
<span class="nav-icon">{{ icon_svg(name)|safe }}</span>
{%- endmacro %}
{% macro badge_chip(user_badge) -%}
<span class="earned-badge">
<span class="earned-badge__icon">{{ nav_icon(user_badge.badge_definition.icon_name) }}</span>
<span>{{ user_badge.badge_definition.name }}</span>
</span>
{%- endmacro %}
{% macro badge_card(badge, earned=false, awarded_at=None) -%}
<article class="badge-card {% if earned %}badge-card--earned{% endif %}">
<div class="badge-card__icon">
{{ nav_icon(badge.icon_name) }}
</div>
<div class="badge-card__body">
<strong>{{ badge.name }}</strong>
<p class="muted">{{ badge.description }}</p>
<div class="chip-row">
<span class="point-pill">Bonus {{ badge.bonus_points }}</span>
<span class="reward-chip">Schwelle {{ badge.threshold }}</span>
{% if awarded_at %}
<span class="reward-chip">Freigeschaltet {{ awarded_at|date_de }}</span>
{% endif %}
</div>
</div>
</article>
{%- endmacro %}
{% macro status_badge(task) -%}
<span class="status-badge status-badge--{{ task.status }}">{{ task.status_label }}</span>
{%- endmacro %}