Commit Graph

47 Commits

Author SHA1 Message Date
19247280a0 [34588f42] Refactor: E-Mail Template für Freigabeanfrage optimiert
- Automatische Bereinigung des Einrichtungsnamens (Entfernung von 'Kindergarten' und Jahreszahlen).
- Links im Text korrigiert und Gallerie-Link auf URL gesetzt.
- Textfluss gestrafft (weniger Absätze) und Grußformel angepasst.
2026-04-17 22:04:57 +00:00
da4995bb3e [34588f42] Fix: Robuste Zeitzonen-Handhabung (Europe/Berlin) für Scheduling
- Hardcodierter UTC+2 Offset durch ZoneInfo('Europe/Berlin') ersetzt, um automatische Sommer-/Winterzeit-Umstellung sicherzustellen.
2026-04-17 21:59:24 +00:00
080a202a9f [34588f42] Fix: FastAPI imports im publish_request_api.py wiederhergestellt 2026-04-17 21:51:11 +00:00
ba06e6d033 [34588f42] Feat: Personalisierte Dankes-E-Mail mit Anleitung und Signatur
- ReleaseParticipant Tabelle hinzugefügt, um Vornamen für den Webhook zwischenzuspeichern.
- Dankes-E-Mail Template mit Anleitungstext, Gutschein-Code und Anleitung-Bild aktualisiert.
- Offizielle Projektsignatur in Backend-E-Mails integriert.
- Frontend sendet nun Teilnehmer-Mapping beim Versand der Anfrage.
2026-04-17 21:43:30 +00:00
3f6b27a89f [34588f42] Feat: Tool 4 für Freigabe-Anfrage verschlankt
- Tool 4 (Freigabeanfragen) wurde von der Tool 3 Abhängigkeit (Supermailer-Analyse) getrennt.
- UI akzeptiert nun eine Liste im Format: E-Mail, Vorname, Kindernamen.
- Das vereinfacht den Workflow drastisch, wenn nur eine Handvoll Kunden manuell für Freigaben angefragt werden sollen.
2026-04-17 20:56:13 +00:00
9b4f80a44f [34588f42] Sec: DEV_MODE_EMAIL_RECIPIENT Implementierung
- E-Mail-Service so konfiguriert, dass alle ausgehenden E-Mails an eine definierte Test-E-Mail-Adresse umgeleitet werden, wenn DEV_MODE_EMAIL_RECIPIENT gesetzt ist.
2026-04-17 20:27:24 +00:00
1f5805e64c [34588f42] Feat: Versandzeit-Steuerung für Freigabe-Anfragen hinzugefügt
- Backend unterstützt nun zeitgesteuerten Versand (scheduled_time) via BackgroundTasks.
- Frontend um ein Zeitauswahl-Feld erweitert.
2026-04-17 20:21:44 +00:00
929d92afeb [34588f42] Feat: Freigabe-Anfrage mit Gutschein-Webhook integriert
- Datenbank um 'DiscountCode' Modell erweitert.
- Neue Backend API-Routen für Upload von Gutscheincodes, Abfrage der Verfügbarkeit und Webhook-Listener (Google Forms) zur automatischen Dankes-E-Mail erstellt.
- Frontend (App.tsx) um ein neues Tool ('Anfrage Veröffentlichung') erweitert, das anhand der CSV-Daten Platzhalter (<Name>, <Kind>, <Kindergarten>) personalisiert und Mails via Gmail versendet.
- Google Forms Webhook Script (google_forms_webhook.js) als Kopiervorlage erstellt.
2026-04-17 20:17:30 +00:00
1a3568f69e [34288f42] Keine Zusammenfassung angegeben.
Keine Zusammenfassung angegeben.
2026-04-14 14:09:58 +00:00
2592607b04 [34288f42] Keine Zusammenfassung angegeben.
Keine Zusammenfassung angegeben.
2026-04-14 08:37:51 +00:00
1dd4c6b6da [32788f42] Bugfix in der QR-Karten-Generierung: Vergangene Calendly-Termine werden nun sowohl beim Abruf (Startzeit auf 'jetzt' gesetzt) als auch bei der Verarbeitung (Filterung auf Termine ab heute 00:00 Uhr Berlin Zeit) korrekt ausgeschlossen. Dies behebt die Anzeige von Altdaten aus dem Vorjahr.
Bugfix in der QR-Karten-Generierung: Vergangene Calendly-Termine werden nun sowohl beim Abruf (Startzeit auf 'jetzt' gesetzt) als auch bei der Verarbeitung (Filterung auf Termine ab heute 00:00 Uhr Berlin Zeit) korrekt ausgeschlossen. Dies behebt die Anzeige von Altdaten aus dem Vorjahr.
2026-04-12 19:57:12 +00:00
5e0186c534 [33e88f42] Keine Zusammenfassung angegeben.
Keine Zusammenfassung angegeben.
2026-04-10 21:51:12 +00:00
e8c2cdfff9 [32788f42] Keine Zusammenfassung angegeben.
Keine Zusammenfassung angegeben.
2026-04-08 16:39:30 +00:00
4baece46bb [32788f42] Keine Zusammenfassung angegeben.
Keine Zusammenfassung angegeben.
2026-04-08 08:21:54 +00:00
831ec7e71c [32788f42] Keine Zusammenfassung angegeben.
Keine Zusammenfassung angegeben.
2026-04-07 18:10:46 +00:00
6bf9260923 [32788f42] Fix missing consent checkmark in PDF list by using a pure CSS drawn checkbox instead of relying on Unicode fonts 2026-03-21 19:51:37 +00:00
7c5b584890 [32788f42] Cleanup PDF list header, fix JOB prefix removal, and further improve consent logic 2026-03-21 19:42:58 +00:00
a128ca9921 [32788f42] Improve flexible matching for children count question in Calendly events 2026-03-21 19:32:59 +00:00
ba8565e59a [32788f42] Implement Feature 3: Nachfass-E-Mails (Reminder Analysis) with CSV export for Supermailer 2026-03-21 19:31:10 +00:00
1c98566e93 [32788f42] Fix font encoding for PDF generation, compress empty slots in appointment list, adjust layout and checkbox positioning 2026-03-21 19:23:31 +00:00
d3987ea20b [32788f42] Fix Calendly pagination 400 Bad Request by using native next_page URL 2026-03-21 18:37:03 +00:00
066470e82c [32788f42] Update README with new Shooting-Planung features and technical fixes 2026-03-21 14:05:45 +00:00
106cfe6e33 [32788f42] Fix Calendly pagination missing events bug 2026-03-21 14:02:25 +00:00
d4b20eb113 [32788f42] Fix unterminated string literal in qr_generator.py 2026-03-21 13:52:37 +00:00
f72719b9a4 [32788f42] Add Termin-Übersicht feature, dynamic Event-Type selection, and refactor QR cards UI into Job Details 2026-03-21 13:46:26 +00:00
ec877ef65b [32788f42] Update QR card generator: adjust Y-coordinates, add timezone support, and render checkboxes 2026-03-21 13:35:16 +00:00
c02facdf5d [32788f42] feat: implement database persistence, modernized UI with Tailwind, and Calendly-integrated QR card generator for Fotograf.de scraper 2026-03-21 09:08:43 +00:00
22fe4dbd9f Dateien nach "fotograf-de-scraper" hochladen 2026-03-21 08:28:55 +00:00
f27489b412 feat: complete scraper infrastructure and implement persistence fix [32788f42] 2026-03-20 20:41:36 +00:00
ffc47e02e7 fix(frontend): remove unused useEffect import to fix build [32788f42] 2026-03-20 20:34:05 +00:00
8578ef8fe3 feat(frontend): implement modern card and modal based UX design [32788f42] 2026-03-20 20:30:41 +00:00
446211e9cb feat(scraper): PDF generation is now fully functional [32788f42] 2026-03-20 20:23:00 +00:00
fa65e99310 fix(scraper): improve navigation and click reliability for export [32788f42] 2026-03-20 19:53:00 +00:00
5294d73dc1 fix(scraper): navigate to correct names list URL for export [32788f42] 2026-03-20 19:38:57 +00:00
5dad99d8b3 fix(scraper): correct CSV export selector and add persistent data volume [32788f42] 2026-03-20 19:28:19 +00:00
5720a4a7e0 fix(backend): add missing weasyprint dependencies for pdf generation [32788f42] 2026-03-20 18:51:54 +00:00
39c3a59744 chore(backend): enable verbose DEBUG logging for troubleshooting [32788f42] 2026-03-20 18:44:50 +00:00
5c69c44ed3 feat(scraper): implement PDF list generation from registrations export [32788f42] 2026-03-20 18:40:06 +00:00
ae61cc44e1 feat(frontend): add tabs, caching and feature buttons [32788f42] 2026-03-20 18:17:39 +00:00
a5f0d0473d feat(scraper): job list extraction is working [32788f42] 2026-03-20 17:50:13 +00:00
07b70762ee docs: update documentation for scraper and list-generator [32788f42] 2026-03-20 16:44:04 +00:00
92ba156603 fix(frontend): use correct diskstation ip for api calls [32788f42] 2026-03-20 14:44:53 +00:00
ea8427aba5 fix(scraper): resolve port conflict by moving backend to 8002 [32788f42] 2026-03-20 14:27:30 +00:00
c27e404ee1 fix(frontend): upgrade node version to 20 to support vite [32788f42] 2026-03-20 14:23:29 +00:00
6b8e146c4a fix(frontend): use multi-stage docker build to be self-contained [32788f42] 2026-03-20 13:52:33 +00:00
961dbf1348 fix(backend): upgrade base image to bookworm to fix build [32788f42] 2026-03-20 13:32:27 +00:00
62ae7fe69e feat(fotograf-de-scraper): initial setup with backend and frontend scaffold [32788f42] 2026-03-20 13:28:53 +00:00