62 lines
3.4 KiB
Markdown
62 lines
3.4 KiB
Markdown
# Papa-Kind-Treff
|
|
|
|
Stand: 2026-08-04
|
|
|
|
Papa-Kind-Treff ist eine PHP-basierte Plattform für Väter mit Fokus auf lokale Events, Termine und Treffen, Community-Austausch und einen geschützten Mitgliederbereich.
|
|
|
|
## Produktumfang
|
|
- lokale Events, Termine und Treffen finden
|
|
- Community/Forum mit Kategorien, Boards, Threads und Antworten
|
|
- Mitgliederbereich für Profil, optionale Kinderinfos und eigene Events
|
|
- Community-Moderation mit Rollenmodell
|
|
|
|
## Aktueller Stand
|
|
- Startseite mit Hero, Event-Suche, Event-Karussell, Community-Vorschau und Mitgliederbereichs-Block
|
|
- Community mit Board-Navigation und separater Thread-Ansicht
|
|
- Community-Admin-Bereich für Bewerbungen, Meldungen, Rollen und Migration
|
|
- standortbasierte Sortierung für die neuesten Events
|
|
- Mitgliederbereich mit linker Bereichsnavigation
|
|
- Profil-Menü mit `Profil`, `Kinder`, `Events`, `Community`, `Einstellungen`
|
|
- Konto-E-Mails sowie sensible Profilfelder werden app-seitig verschlüsselt gespeichert
|
|
- Kinder können angelegt, bearbeitet und gelöscht werden
|
|
- Profiladresse mit verschlüsselter Straße/Hausnummer, Adresssuche, Browser-Übernahme und Validierung
|
|
- System-Sektion für Seiten-Admins mit Wartungs- und Diensteschaltern
|
|
- neue Datenbasis für ein späteres Termin-, Ort- und Veranstaltungssystem angelegt
|
|
- Mitgliederbereich `Events` unterstützt jetzt drei Anlagetypen: `Eigenes Event`, `Ort`, `Sonstige Veranstaltung`
|
|
- Eigene Events haben jetzt Kategorie, optionales Bild, klare Kinderangabe, optionale Platzzahl und serverseitig validierte Adressdaten
|
|
- Orte und sonstige Veranstaltungen haben jetzt eine angepasste Eingabemaske mit Ortssuche, Browser-Adressübernahme, serverseitiger Adressvalidierung, flexiblen Preisregeln, flexiblen Öffnungs-/Zeitfenstern und Bild-Upload
|
|
- Die Eingabemasken sind jetzt progressiv aufgebaut: erst Pflichtangaben, optionale Daten in einklappbaren Bereichen
|
|
- Kategorien laufen jetzt über eine Sucheingabe mit bestehenden Vorschlägen; neue Kategorien werden automatisch angelegt und können im Systembereich von Seiten-Admins zusammengeführt werden
|
|
|
|
## Wording-Regel
|
|
- Primärbegriff im Produkt: `Events`
|
|
- Ergänzende SEO-/Erklärbegriffe: `Termine`, `Treffen`
|
|
- Navigation, Buttons und Kern-UI verwenden konsequent `Events`
|
|
|
|
## Technik
|
|
- Einstieg: `public/index.php`
|
|
- Templates: `partials/`
|
|
- App-Logik: `src/App/`
|
|
- Assets: `public/assets/`
|
|
- Datenbankschema: `schema.sql`
|
|
- neue Basisklassen: `src/App/SystemSettings.php`, `src/App/ListingCatalog.php`
|
|
|
|
## Datenschutz und Sicherheit
|
|
- Passwort-Hashes über Argon2id
|
|
- Konto-E-Mails verschlüsselt plus separater HMAC-Lookup-Hash
|
|
- Profilfelder wie Vorname, Nachname, Straße/Hausnummer, Telefonnummer, Beruf, Sprachen und Kurzvorstellung verschlüsselt
|
|
- Standortkoordinaten (`lat`, `lng`) bleiben für Distanz- und Umkreissuchen technisch im Klartext
|
|
- nicht notwendige Analyse- und Drittanbieterfunktionen erst nach Einwilligung aktiv
|
|
|
|
## Dokumentationspflicht bei Änderungen
|
|
Bei jeder Änderung im Projekt mitprüfen und bei Bedarf aktualisieren:
|
|
- `Internal/de/README.md`
|
|
- `Internal/de/PROJECT_CONTEXT.md`
|
|
- `Internal/de/PROJECT_STRUCTURE.md`
|
|
- die parallelen englischen Dateien unter `Internal/en/`
|
|
|
|
## Parallelpflege DE / EN
|
|
- Die Dokumentation in `Internal/de/` und `Internal/en/` ist inhaltlich vollständig parallel zu halten.
|
|
- Deutsch und Englisch sind beide verbindliche interne Referenzen.
|
|
- Die Root-`README.md` im Hauptordner bleibt der feste Einstieg für neue Chats und verweist auf diese Struktur.
|