# Journal 2026-10-15

## Fisch: Warteliste nur noch Admin

- Öffentliche Wartelisten-Anmeldung geschlossen (`isWaitlistOpen` = false, `/warteliste` und
  API 403, kein CTA/Link mehr). Bestehende Einträge + manuelles Anbieten/Übernehmen im Admin;
  Annahme-Links für bereits versendete Angebote bleiben. Auto-Nachrücken weiter aus
  (`AUTO_OFFER_ON_FREE_SLOT = false`). E2E nutzt `addToWaitlist(..., true)`.

## Schwimmkurse: Namensänderung wirkte auf beide Kinder

- Mutter mit zwei Kursen, gleicher Eltern-Customer (E-Mail). Admin-Update schrieb
  `customer.firstName` → beide Kurse zeigten den neuen Vornamen.
- Fix: Vor-/Nachname und Geburtsdatum nur auf `participant_*` der Buchung;
  E-Mail/Telefon bleiben am Customer. Admin-JSON zeigt Display-Namen;
  PDF/E-Mail nutzen `getParticipantDisplay*`. Extra-Felder Kind-Name am Termin mitgezogen.
- Dateien: `AppointmentController`, `AdminAppointmentsController`, `CoursePdfService`, `EmailService`.

## Firmenseite: Effekte abschließen und 3D-Projektbeispiele

- Nutzer möchte die offene Überarbeitung fortsetzen und 3D-Beispielbilder für Projekte und Loggerbau. Klärung: individuelle Datenlogger je nach Projekt.
- Drei neue imagegen-Illustrationen: Buchungs-/Verwaltungssoftware, Pool-/Anlagenmonitoring, Datenlogger-Aufbau. Als Beispielillustrationen gekennzeichnet, keine Behauptung echter Kundenfotos oder Geräte. WebP-Dateien zusammen ca. 349 KiB, Original-PNGs erhalten. Lazy Loading, feste Seitenverhältnisse und beschreibende Alternativtexte.
- Loggerbau als Leistung ergänzt; Bildreihe mit kurzen Schlagwörtern und Links zu Referenz bzw. Kontakt. Desktop dreispaltig, mobil einspaltig.
- Scroll-Einblendung auf Bildreihe erweitert, überlappende Eltern-/Kindanimation im KI-Abschnitt verhindert; dezenter Bildzoom nur mit Maus und ohne Reduced Motion. Bestehende Klick- und Linkeffekte erhalten.
- Dateien: `templates/home/index.html.twig`, `public/css/dpohl-home.css`, `public/js/dpohl-landing.js`, `public/images/projects/*`, `docs/TODO.md`.
- Prüfung: JS-Syntax, isoliertes Twig-Rendering, Desktop- und mobile Browserprüfung; alle drei Bilder geladen; bei 390px kein horizontaler Überlauf; mobiles Menü öffnet und schließt bei Navigation. Vollständiger Symfony-Kerneltest weiterhin durch bekannte Datenbankabhängigkeit begrenzt. Kein Mailversand, Deploy oder Commit.

## Effekte, Dopplungen und Rechtsseiten

- Zwei Reveal-Implementierungen in einen Observer zusammengeführt; Startseite nutzt einmalige Web-Animation, bestehende Rechtsseiten ihre CSS-Einblendung. FAQ/Kontakt in Startseiten-Effekte einbezogen.
- Redundante Ablauf-Frage aus FAQ und JSON-LD entfernt, drei verbleibende Fragen konsistent. Wiederholte Schlagwortzeilen unter Projektbildern und ungenutzte CSS-Regeln entfernt.
- Prüfung: Node-VM-Funktionstest für einmalige Animation, Reduced Motion, Abbruch bei Einstellungswechsel und Fallback ohne IntersectionObserver. Browser: keine doppelten IDs, alle Abschnitte einmalig, Skripte jeweils einmal geladen, FAQ und JSON-LD jeweils drei Fragen.
- Impressum/Datenschutz waren in Controller und Footer vorhanden. Temporärer lokaler Vorschau-Router lieferte bisher für alle Pfade die Startseite; Routing korrigiert. Beide Rechtsseiten liefern HTTP 200 mit richtigem Titel, Browsernavigation geprüft. Inhalte rechtlich nicht verändert oder geprüft.
- Dateien: `public/js/dpohl-landing.js`, `public/css/dpohl-home.css`, `templates/home/index.html.twig`, `docs/TODO.md`; Vorschau-Router außerhalb des Repositorys. Kein Deploy/Commit.

## Smart Home statt Loggerbau

- Nutzer möchte den Loggerbau-Schwerpunkt durch vernetztes Smart Home mit PV-Monitoring und Beleuchtung ersetzen.
- Neues 3D-Hausmotiv mit PV, Beleuchtung und Tablet-Monitoring als PNG und optimiertes WebP ergänzt; bisheriges Loggerbild aus der Startseite entfernt. Smart-Home-Leistung um PV-Ertrag ergänzt, Monitoring-Leistung ohne Loggerbau formuliert.
- Dateien: `templates/home/index.html.twig`, `public/images/projects/smart-home-3d.png`, `public/images/projects/smart-home-3d.webp`, `docs/TODO.md`.
- Prüfung: lokale Twig-Vorschau HTTP 200, kein Loggerbau-Text mehr, aktualisierte Bildreihe im Browser sichtbar. Kein Deploy oder Commit.

## Rechtsseiten im aktuellen Firmendesign

- Problem: Impressum und Datenschutz nutzten noch den alten Markenauftritt mit Verlaufskarten und altem Headerlogo.
- Gemeinsames Rechtsseiten-Basistemplate bindet das Startseiten-Design und aktuelle Logo ein. Verlaufskarten durch klare Textabschnitte mit Trennlinien ersetzt; Inhaltsverzeichnis seitlich am Desktop, oberhalb auf Mobilgeräten. Rechtliche Texte unverändert.
- Dateien: `templates/home/base_legal.html.twig`, `templates/home/impressum.html.twig`, `templates/home/datenschutz.html.twig`, `public/css/dpohl-home.css`, `docs/TODO.md`.
- Prüfung: Beide Seiten lokal erfolgreich gerendert (HTTP 200), Datenschutz am Desktop und beide Seiten bei 390px geprüft; kein horizontaler Überlauf bei Datenschutz. Kein Deploy/Commit.
