Versandfreigrenze pro Land, USt-ID, Rechtstexte+FAQ jetzt admin-editierbar

1) Versandkostenfreigrenze ist jetzt länderabhängig statt einer einzigen Zahl für alle:
   Deutschland 75 €, Österreich/Luxemburg 85 €, Schweiz 100 € (im Adminbereich unter
   "Versandkosten-Staffel" änderbar). Betrifft Warenkorb (live je nach gewähltem Land),
   Checkout-Berechnung, sowie alle Text-Hinweise (Topbar, FAQ, AGB) in allen 4 Sprachen.

2) Neues Feld "USt-IdNr." im Impressum (optional, admin-editierbar) — erscheint nur, wenn
   ausgefüllt.

3) Impressum, AGB, Datenschutzerklärung, Widerrufsbelehrung und FAQ sind jetzt vollständig
   im Adminbereich editierbar (neue Collection "⚖️ Rechtstexte & FAQ") statt fest im Code zu
   stehen. Jede Rechtsseite besteht aus frei bearbeitbaren Abschnitten (Überschrift + Text) —
   VanVan kann selbst Abschnitte ergänzen, ändern oder löschen. Freitext wird beim Anzeigen
   sicher escaped (kein kaputtes HTML durch Tippfehler möglich) und nackte Links automatisch
   klickbar gemacht. FAQ bleibt dabei weiterhin in allen 4 Sprachen separat pflegbar.

Ausführlich getestet: Freigrenze pro Land im echten Warenkorb verifiziert (Puppeteer,
84€ Warenwert -> DE kostenlos, AT/LU "noch 1€", CH "noch 16€"), Rechtstexte/FAQ/USt-ID
gegen den fertigen Build geprüft, EU-Streitschlichtung-Link-Bug (Satzzeichen wurde
mitverlinkt) gefunden und behoben.

Co-Authored-By: Claude Sonnet 5 <[email protected]>
This commit is contained in:
qcigano
2026-08-03 22:04:01 +02:00
co-authored by Claude Sonnet 5
parent 9a2c75ebe6
commit 0c1c8f075f
23 changed files with 495 additions and 310 deletions
+15 -34
View File
@@ -1,5 +1,6 @@
---
import Layout from "../../layouts/Layout.astro";
import { impressum, rechtstextAlsHtml } from "../../data/legal";
---
<Layout title="Impressum" path="/impressum/" legalOnly={true}>
<section class="section-tight">
@@ -9,43 +10,23 @@ import Layout from "../../layouts/Layout.astro";
⚠️ <strong>Muster-Text.</strong> Dies ist ein vorbereiteter Platzhalter gemäß Pflichtenheft
und ersetzt keine rechtliche Prüfung. Vor Veröffentlichung bitte von einer fachkundigen
Stelle (z. B. Anwalt/Anwältin oder IHK-Impressumsgenerator) prüfen und mit den echten
Angaben von VanVan vervollständigen.
Angaben von VanVan vervollständigen — im Adminbereich unter „⚖️ Rechtstexte & FAQ"
bearbeitbar.
</div>
<h2>Angaben gemäß § 5 DDG</h2>
<p>
[Vorname Nachname] („VanVan")<br />
Van's DIY & Bastelbedarf<br />
Einzelunternehmen<br />
[Straße und Hausnummer]<br />
[PLZ Ort]<br />
Deutschland
</p>
{impressum.sections.map((s) => (
<>
<h2>{s.heading}</h2>
<Fragment set:html={rechtstextAlsHtml(s.body)} />
</>
))}
<h2>Kontakt</h2>
<p>
Telefon: [Telefonnummer]<br />
E-Mail: [E-Mail-Adresse]
</p>
<h2>Umsatzsteuer</h2>
<p>Gemäß §19 UStG wird als Kleinunternehmer keine Umsatzsteuer berechnet und ausgewiesen.</p>
<h2>Verantwortlich für den Inhalt nach § 18 Abs. 2 MStV</h2>
<p>[Vorname Nachname], Anschrift wie oben.</p>
<h2>EU-Streitschlichtung</h2>
<p>
Die Europäische Kommission stellt eine Plattform zur Online-Streitbeilegung (OS) bereit:
<a href="https://ec.europa.eu/consumers/odr/" target="_blank" rel="noopener">https://ec.europa.eu/consumers/odr/</a>.
Unsere E-Mail-Adresse finden Sie oben im Impressum.
</p>
<h2>Verbraucherstreitbeilegung/Universalschlichtungsstelle</h2>
<p>
Wir sind nicht bereit oder verpflichtet, an Streitbeilegungsverfahren vor einer
Verbraucherschlichtungsstelle teilzunehmen. [Ggf. anpassen, falls sich das ändert.]
</p>
{impressum.ustId && impressum.ustId.trim() !== "" && (
<>
<h2>Umsatzsteuer-Identifikationsnummer</h2>
<p>{impressum.ustId}</p>
</>
)}
</div>
</section>
</Layout>