diff --git a/app/templates/v2/screens/antrag_detail.html b/app/templates/v2/screens/antrag_detail.html
index ec0a649..3e25955 100644
--- a/app/templates/v2/screens/antrag_detail.html
+++ b/app/templates/v2/screens/antrag_detail.html
@@ -461,8 +461,10 @@
JSON-Export
- Permalink
+ Permalink kopieren
{% endblock %}
@@ -876,6 +878,25 @@ window.v2ShowMatrixFieldInfo = function(field) {
return lines.join('\n');
}
+ /* Permalink-Klick kopiert in die Zwischenablage statt zu navigieren. */
+ window.v3CopyPermalink = function (e, el) {
+ e.preventDefault();
+ var permalink = window.location.origin + el.getAttribute('href');
+ var orig = el.textContent;
+ var done = el.dataset.copiedLabel || 'Kopiert ✓';
+ function flash() {
+ el.textContent = done;
+ setTimeout(function () { el.textContent = orig; }, 1600);
+ }
+ if (navigator.clipboard && navigator.clipboard.writeText) {
+ navigator.clipboard.writeText(permalink).then(flash, function () {
+ window.prompt('Permalink kopieren:', permalink);
+ });
+ } else {
+ window.prompt('Permalink kopieren:', permalink);
+ }
+ };
+
window.v2DetailShare = function(platform) {
if (platform === 'linkedin') {
// LinkedIn hat /sharing/share-offsite/ zurueckgebaut — der prefillt
diff --git a/app/templates/v3/screens/antrag_detail.html b/app/templates/v3/screens/antrag_detail.html
index 92f453b..de91086 100644
--- a/app/templates/v3/screens/antrag_detail.html
+++ b/app/templates/v3/screens/antrag_detail.html
@@ -408,7 +408,9 @@
Original-Antrag (Landtag)
{% endif %}
JSON-Export
- Permalink
+ Permalink kopieren
{# News-Box (per JS gefuellt) — eine Nachricht, max 9 Zeilen #}
diff --git a/app/wahlprogramme.py b/app/wahlprogramme.py
index 9237544..57737d0 100644
--- a/app/wahlprogramme.py
+++ b/app/wahlprogramme.py
@@ -247,6 +247,18 @@ WAHLPROGRAMME: dict[str, dict[str, dict]] = {
"FREIE WÄHLER": {"file": "fw-rp-2021.pdf", "titel": "FREIE WÄHLER Rheinland-Pfalz Wahlprogramm 2021", "partei": "FREIE WÄHLER Rheinland-Pfalz", "jahr": 2021, "seiten": 80},
"FDP": {"file": "fdp-rp-2021.pdf", "titel": "FDP Rheinland-Pfalz Landtagswahlprogramm 2021", "partei": "FDP Rheinland-Pfalz", "jahr": 2021, "seiten": 100},
},
+ # Bundestag — keine bundesweiten Wahlprogramme im Repo, daher dienen
+ # die Grundsatzprogramme als Quelle. CSU + BSW haben keine Programme
+ # in der Registry und werden weiterhin als fehlend gemeldet.
+ # Diese Eintraege sind von embeddings.py separat indiziert (typ=parteiprogramm).
+ "BUND": {
+ "CDU": {"file": "cdu-grundsatzprogramm.pdf", "titel": "CDU Grundsatzprogramm 2024", "partei": "CDU", "jahr": 2024, "seiten": 64, "ist_grundsatz": True},
+ "SPD": {"file": "spd-grundsatzprogramm.pdf", "titel": "SPD Hamburger Programm 2007", "partei": "SPD", "jahr": 2007, "seiten": 78, "ist_grundsatz": True},
+ "GRÜNE": {"file": "gruene-grundsatzprogramm.pdf","titel": "Grüne Grundsatzprogramm 2020", "partei": "GRÜNE", "jahr": 2020, "seiten": 116, "ist_grundsatz": True},
+ "FDP": {"file": "fdp-grundsatzprogramm.pdf", "titel": "FDP Karlsruher Freiheitsthesen 2012","partei": "FDP", "jahr": 2012, "seiten": 31, "ist_grundsatz": True},
+ "AfD": {"file": "afd-grundsatzprogramm.pdf", "titel": "AfD Grundsatzprogramm 2016", "partei": "AfD", "jahr": 2016, "seiten": 96, "ist_grundsatz": True},
+ "LINKE": {"file": "linke-grundsatzprogramm.pdf", "titel": "DIE LINKE Erfurter Programm 2011", "partei": "LINKE", "jahr": 2011, "seiten": 84, "ist_grundsatz": True},
+ },
}
# Pro Bundesland: Markdown-Übersichtsdatei mit Wahlprogramm-Zusammenfassungen,