Faktenkompass: UI-Rebrand, Admin-Assistent und Produktions-Setup.

Modernisiert die öffentliche Oberfläche mit Inter, Dark Mode und Live-Suche, ergänzt KI-gestützte Entwürfe im Admin mit Nachweis-Uploads und dokumentiert Daphne/Nginx für den Serverbetrieb.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Pirmin Hinderling (fedora)
2026-07-07 15:33:58 +02:00
parent 2c7fb7d030
commit db3558872e
43 changed files with 3014 additions and 208 deletions
+5 -31
View File
@@ -3,12 +3,12 @@
{% block title %}Suche Faktenkompass{% endblock %}
{% block content %}
<h1 class="h5 mb-3">Suche</h1>
<h1 class="fk-page-title">Suche</h1>
<form method="get" class="row g-2 mb-3">
<form method="get" action="{% url 'claims:search' %}" class="row g-2 mb-4" data-live-search data-live-target="#search-results">
<div class="col-12">
<input type="search" id="q" name="q" class="form-control form-control-sm"
placeholder="Behauptung suchen…" value="{{ query }}" autofocus>
placeholder="Behauptung suchen…" value="{{ query }}" autofocus autocomplete="off">
</div>
<div class="col-6">
<select id="kategorie" name="kategorie" class="form-select form-select-sm">
@@ -26,35 +26,9 @@
{% endfor %}
</select>
</div>
<div class="col-12">
<button type="submit" class="btn btn-primary btn-sm w-100">Suchen</button>
</div>
</form>
{% if claims is not None %}
<div class="d-flex justify-content-between align-items-center mb-2">
<span class="small text-muted">{{ result_count }} Ergebnis{% if result_count != 1 %}se{% endif %}</span>
{% if query or category_slug or status %}
<a href="{% url 'claims:search' %}" class="small text-muted">Zurücksetzen</a>
{% endif %}
<div id="search-results">
{% include "claims/partials/search_results.html" %}
</div>
<div class="d-flex flex-column gap-2">
{% for claim in claims %}
<a href="{{ claim.get_absolute_url }}" class="text-decoration-none">
<div class="card claim-card">
<div class="card-body">
<div class="d-flex flex-wrap gap-1 mb-1">
<span class="badge text-bg-secondary">{{ claim.category.name }}</span>
<span class="badge text-bg-{{ claim.get_status_badge_class }}">{{ claim.get_status_display }}</span>
</div>
<span class="text-dark">{{ claim.title }}</span>
</div>
</div>
</a>
{% empty %}
<p class="text-muted text-center py-4 mb-0">Keine Ergebnisse.</p>
{% endfor %}
</div>
{% endif %}
{% endblock %}