From 3526909d61176549f2ff256a096ddcd5cb6152c4 Mon Sep 17 00:00:00 2001 From: Kenso Grimm Date: Wed, 7 Oct 2026 15:47:29 +0000 Subject: [PATCH] =?UTF-8?q?Buchungskalender:=20Mail-Nummern=20K36,=20K37,?= =?UTF-8?q?=20T23=20(K31/K32/T22=20geh=C3=B6ren=20den=20Auftr=C3=A4gen)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 5.5 --- docs/funktionen/unterkunft-einbau.md | 2 +- docs/funktionen/unterkunft-livegang.md | 6 +++--- .../plans/2026-10-07-buchungskalender.md | 2 ++ .../specs/2026-10-07-buchungskalender-design.md | 2 ++ ...nfrage.html => K36 Neue Buchungsanfrage.html} | 2 +- ...2 Neue Buchung.html => K37 Neue Buchung.html} | 2 +- ...ml => T23 Neue Anfrage Buchungskalender.html} | 2 +- server/services/unterkunft/ablauf.js | 4 ++-- server/services/unterkunft/anfrageFunktion.js | 14 +++++++------- server/services/unterkunft/mails.js | 8 ++++---- test/mailTemplates.test.js | 16 ++++++++-------- test/ui/unterkunft.ui.mjs | 4 ++-- test/unterkunftAblauf.test.js | 6 +++--- test/unterkunftAnfrageFunktion.test.js | 14 +++++++------- test/unterkunftBuchung.test.js | 2 +- test/unterkunftMails.test.js | 10 +++++----- test/unterkunftPublic.test.js | 2 +- 17 files changed, 51 insertions(+), 47 deletions(-) rename server/mail-templates/{K31 Neue Buchungsanfrage.html => K36 Neue Buchungsanfrage.html} (99%) rename server/mail-templates/{K32 Neue Buchung.html => K37 Neue Buchung.html} (99%) rename server/mail-templates/{T22 Neue Anfrage Buchungskalender.html => T23 Neue Anfrage Buchungskalender.html} (99%) diff --git a/docs/funktionen/unterkunft-einbau.md b/docs/funktionen/unterkunft-einbau.md index 79d6615..7f06400 100644 --- a/docs/funktionen/unterkunft-einbau.md +++ b/docs/funktionen/unterkunft-einbau.md @@ -55,7 +55,7 @@ Der Inhalt des `div` bleibt stehen, solange das Widget nicht lädt oder die Funk - Auf dem Handy und am Desktop: Anreise und Abreise wählbar, belegte Nächte nicht wählbar, Mindestnächte und Höchstzahl der Personen werden geprüft, Anfrage senden zeigt die Nummer. - Tastatur: Pfeiltasten im Kalender, Enter wählt; jeder Tag hat ein `aria-label` mit Datum und Status. - Kein Konflikt mit globalen Stilen des Themes (Abschnitt 2). -- Testanfrage mit eigener Adresse: E-Mail G16 (Eingang) beim Gast, K31 beim Vermieter. +- Testanfrage mit eigener Adresse: E-Mail G16 (Eingang) beim Gast, K36 beim Vermieter. ## 6. Vorschau und Testanfrage diff --git a/docs/funktionen/unterkunft-livegang.md b/docs/funktionen/unterkunft-livegang.md index 3c838ed..aec5dbd 100644 --- a/docs/funktionen/unterkunft-livegang.md +++ b/docs/funktionen/unterkunft-livegang.md @@ -9,7 +9,7 @@ Reihenfolge für den Inhaber. Jeder Schritt braucht seine Freigabe; nichts davon ## 0. Voraussetzung -- TP2, Webshop und Öffnungszeiten-Zweig liegen schon auf `origin/main` (Portal) bzw. `test` (WOMS) oder werden vorher gemerged: Das Funktionen-Register, die Mail-Warteschlange (`termineOutbox`) und die Connect-Anbindung stammen von dort. `git merge origin/main` im Worktree, Tests laufen lassen. Erwartbare Konflikte: `server/config.js` (features), `public/funktionen.js`, `test/mailTemplates.test.js` (Vorlagen-IDs: K31 bis K35, G16 bis G22, T22 sind für den Buchungskalender vergeben, vor dem Merge gegen `main` prüfen). +- TP2, Webshop und Öffnungszeiten-Zweig liegen schon auf `origin/main` (Portal) bzw. `test` (WOMS) oder werden vorher gemerged: Das Funktionen-Register, die Mail-Warteschlange (`termineOutbox`) und die Connect-Anbindung stammen von dort. `git merge origin/main` im Worktree, Tests laufen lassen. Erwartbare Konflikte: `server/config.js` (features), `public/funktionen.js`, `test/mailTemplates.test.js` (Vorlagen-IDs: K36 bis K35, G16 bis G22, T23 sind für den Buchungskalender vergeben, vor dem Merge gegen `main` prüfen). - Die Rechtstexte der Fassung 2026-10-07 liegen als HTML und PDF im Zweig (`public/rechtliches/*-2026-10-07.*`, siehe Schritt 6). ## 1. Inhaber prüft die Texte @@ -97,8 +97,8 @@ Das macht Claude selbst (Wunsch des Inhabers). Dafür legt der Inhaber vorher de ## 8. Pilot mit Mimi -1. Testanfrage im Widget (eigene Adresse): Mails G16 und K31 prüfen. -2. Im Portal freigeben (G17), Buchungslink öffnen, „vor Ort“ buchen (G19 mit Rechnung als PDF, K32). +1. Testanfrage im Widget (eigene Adresse): Mails G16 und K36 prüfen. +2. Im Portal freigeben (G17), Buchungslink öffnen, „vor Ort“ buchen (G19 mit Rechnung als PDF, K37). 3. Rechnung prüfen: Mimis Name und Anschrift, Steuernummer oder USt-ID, Nummer lückenlos, Steuerart, kein WEBklar-Hinweis. 4. Mit Stripe-Konto: Online-Zahlung mit kleinem Betrag testen (G20), dann stornieren mit Erstattung (G22, Stornorechnung). 5. Stornieren (Stornorechnung), Testbuchungen wieder entfernen; iCal-Import und -Export mit einem Test-Kalender prüfen. diff --git a/docs/superpowers/plans/2026-10-07-buchungskalender.md b/docs/superpowers/plans/2026-10-07-buchungskalender.md index 33918de..50f37fa 100644 --- a/docs/superpowers/plans/2026-10-07-buchungskalender.md +++ b/docs/superpowers/plans/2026-10-07-buchungskalender.md @@ -1,5 +1,7 @@ # Buchungskalender (Funktion `unterkunft`) Implementation Plan +> **Hinweis (2026-10-07, Livegang-Vorbereitung):** Die Mail-Nummern K31, K32 und T22 gehören seit dem Merge mit `origin/main` den Aufträgen (Auftragsbestätigung). Im Buchungskalender heißen die Mails jetzt **K36** (Neue Buchungsanfrage, vorher K31), **K37** (Neue Buchung, vorher K32) und **T23** (Neue Anfrage Buchungskalender, vorher T22). Der folgende Text nennt noch die alten Nummern. + > **For agentic workers:** REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (`- [ ]`) syntax for tracking. **Goal:** Neue Portal-Funktion „Buchungskalender“ für Ferienwohnungen: Kalender-Widget mit Anfrage, Freigabe durch den Vermieter, verbindliche Buchung per Link, Rechnung im Namen des Vermieters, Zahlung über Stripe Connect oder vor Ort, iCal-Abgleich; erste Kundin Donau Home. diff --git a/docs/superpowers/specs/2026-10-07-buchungskalender-design.md b/docs/superpowers/specs/2026-10-07-buchungskalender-design.md index c57f789..a53eaf6 100644 --- a/docs/superpowers/specs/2026-10-07-buchungskalender-design.md +++ b/docs/superpowers/specs/2026-10-07-buchungskalender-design.md @@ -1,5 +1,7 @@ # Buchungskalender für Unterkünfte (Funktion `unterkunft`): Design +> **Hinweis (2026-10-07, Livegang-Vorbereitung):** Die Mail-Nummern K31, K32 und T22 gehören seit dem Merge mit `origin/main` den Aufträgen (Auftragsbestätigung). Im Buchungskalender heißen die Mails jetzt **K36** (Neue Buchungsanfrage, vorher K31), **K37** (Neue Buchung, vorher K32) und **T23** (Neue Anfrage Buchungskalender, vorher T22). Der folgende Text nennt noch die alten Nummern. + Stand 2026-10-07. Basis: Portal `origin/main` 8814c4a (TP2, Webshop, Öffnungszeiten im Pilot). Arbeitszweig `feature/unterkunft`, Worktree `dev-unterkunft`. Pfade: **P** = Portal-Repo, **W** = WOMS-Repo, **D** = Website Donau Home (`WEBklar/donau-home`, lokaler Klon `/root/reports/donau-home-website`). diff --git a/server/mail-templates/K31 Neue Buchungsanfrage.html b/server/mail-templates/K36 Neue Buchungsanfrage.html similarity index 99% rename from server/mail-templates/K31 Neue Buchungsanfrage.html rename to server/mail-templates/K36 Neue Buchungsanfrage.html index 5a7460a..0020cfd 100644 --- a/server/mail-templates/K31 Neue Buchungsanfrage.html +++ b/server/mail-templates/K36 Neue Buchungsanfrage.html @@ -3,7 +3,7 @@