gwoe-antragspruefer/app/templates/v2/components/quote_card.html

37 lines
1.8 KiB
HTML
Raw Normal View History

{#
quote_card.html — Zitat-Karte mit Verifikations-Siegel
Props:
text : str — Zitattext (wird kursiv gesetzt)
source : str — Quellenangabe (z.B. "Wahlprogramm 2026 · S. 84")
verified : bool — Zeigt ✓ verifiziert-Siegel (default True)
contra : bool — Widerspruch-Variante (rote Border, default False)
pdf_href : str — Optionaler Link zu PDF-Viewer mit Seiten-Anker
Farbcodierung:
contra=False: border-left var(--ecg-blue), Siegel Grün
contra=True: border-left var(--redline-contra), Siegel Rot
Verwendung:
{% from "v2/components/quote_card.html" import quote_card %}
{{ quote_card("Wir verpflichten...", "Wahlprogramm 2026 · S. 84") }}
{{ quote_card("Konkurrenz abzulehnen...", "Grundsatzprogramm · S. 42", contra=True) }}
#}
{% macro quote_card(text, source="", verified=True, contra=False, pdf_href="") %}
<div class="v2-quote {% if contra %}contra{% endif %}">
<div class="q-body">„{{ text }}"</div>
<cite>
{% if verified %}
<span class="verified">{% if contra %}&#10007;{% else %}&#10003;{% endif %} {% if contra %}Programm-Widerspruch{% else %}verifiziert{% endif %}</span>
{% endif %}
{{ source }}
{% if pdf_href %}
{# Falls pdf_href noch keinen #page=…-Anker hat, aus seite= im Query-String einen anhaengen — Browser-PDF-Viewer ignorieren PDF-OpenAction, der Hash-Anker funktioniert zuverlaessig. #}
{% set _href = pdf_href if '#page=' in pdf_href else (pdf_href ~ ('#page=' ~ (pdf_href.split('seite=')[1].split('&')[0] if 'seite=' in pdf_href else '1'))) %}
· <a href="{{ _href }}" target="_blank" rel="noopener" style="color:var(--ecg-blue);border-bottom:1px solid rgba(0,157,165,0.35);">PDF öffnen</a>
{% endif %}
</cite>
</div>
{% endmacro %}