Initial commit - Help Service for Coolify

This commit is contained in:
2025-12-17 10:08:16 +01:00
commit a998c47132
57 changed files with 7104 additions and 0 deletions

View File

@@ -0,0 +1,241 @@
---
id: next-session
title: Naechste Session
icon: calendar-check
description: Aktuelle Aufgaben und Session-Zusammenfassung
section: Entwicklung
tags: [Session, Aufgaben, Aktuell, Todo]
related: [entwicklung/sprint-uebersicht, features]
order: 92
---
# Naechste Session
Quick-Start Guide fuer die naechste Entwicklungs-Session.
---
## Aktueller Stand
**Letztes Update:** 16. Dezember 2025 (Nacht)
**Letzte Session:** Sprint 11 - Custom Database Tables
**Status:** Kurs-Booking 100% | PRODUCTION READY
---
## DEPLOYMENT MORGEN (17.12.2025)
### Status: BEREIT
| Komponente | Status |
|------------|--------|
| Kurs-Booking auf 8200 | ✅ Installiert |
| Redis Object Cache | ✅ Aktiv |
| Nginx FastCGI Cache | ✅ Aktiv |
| Coolify Config | ✅ Erstellt |
| Deployment-Checkliste | ✅ Fertig |
### Deployment-Dateien
```
coolify/
├── docker-compose.yml
├── nginx/nginx.conf
├── nginx/default.conf
├── docker-entrypoint-permissions.sh
└── DEPLOYMENT-CHECKLIST.md
```
---
## Session 16.12.2025 (Nacht) - Sprint 11
### Erledigte Aufgaben
| Aufgabe | Status | Details |
|---------|--------|---------|
| Custom Database Tables | ✅ | Performance-Optimierung |
| class-database.php | ✅ | Schema, Migration, Installer |
| class-buchung-repository.php | ✅ | Optimierte Query-Methoden |
| Sync-Hooks | ✅ | Auto-Sync bei CRUD |
| Admin-UI | ✅ | Fortschrittsbalken, Migration-Button |
| AJAX Migration | ✅ | Batch-Migration via Button |
| Sync 8200 | ✅ | Alles synchronisiert |
### Neue Dateien
- `includes/class-database.php` - Schema + Migration
- `includes/class-buchung-repository.php` - Repository-Pattern
### Custom Table Schema
```sql
wp_kurs_buchungen (
id, post_id, kurs_id, variante_id, status,
name, email, phone, anzahl, total_price,
deposit_amount, payment_status, sevdesk_*,
confirm_token, created_at, confirmed_at, cancelled_at
)
-- Indizes: post_id, kurs_id, status, email, created_at
```
---
## Session 16.12.2025 (Spaet) - Sprint 10
### Erledigte Aufgaben
| Aufgabe | Status | Details |
|---------|--------|---------|
| Kontext-Hilfe-System | ✅ | Info-Icons mit Tooltips |
| Helper-Methoden | ✅ | `render_help_icon()` + `help_icon()` |
| Tooltip CSS | ✅ | 4 Positionen, Responsive, Animiert |
| Info-Icons eingebaut | ✅ | Module, Preise, Rechtliches, Bank |
| Help-Topic Links | ✅ | "Mehr erfahren" im Tooltip |
| Sync 8200 | ✅ | Alles synchronisiert |
### Neue Funktionen
```php
// Verwendung in Settings-Tabs:
self::help_icon(
'Erklaerungstext fuer dieses Feld',
'help-topic-slug', // Optional: Link zu Help-Service
'right' // Position: top, bottom, left, right
);
```
---
## Session 16.12.2025 (Abend) - Sprint 9
### Erledigte Aufgaben
| Aufgabe | Status | Details |
|---------|--------|---------|
| Pop-up Neuigkeiten | ✅ | Komplettes Marketing-Popup-System |
| class-neuigkeit.php | ✅ | ~830 Zeilen, Post-Type + Frontend |
| class-subscriber.php | ✅ | Fuer spaeteren Newsletter |
| Kurs-Auswahl-Modi | ✅ | Einzeln, Kategorie, Produktart, Alle |
| Zufalls-Selektion | ✅ | Zufaelliger Kurs aus Pool |
| Statistiken | ✅ | Views, Klicks, Schliessungen |
| Help-Service Doku | ✅ | popup-neuigkeiten.md + Marketing-Sektion |
| Sync 8200 | ✅ | Alles synchronisiert |
### Neue Dateien
- `includes/class-neuigkeit.php` - Popup-Logik
- `includes/class-subscriber.php` - Newsletter (spaeter)
- `help-service/content/popup-neuigkeiten.md` - Dokumentation
---
## Session 16.12.2025 (Vormittag) - Production Deployment
### Erledigte Aufgaben
| Aufgabe | Status | Details |
|---------|--------|---------|
| Backup 8200 | ✅ | WordPress + DB gesichert |
| Kurs-Booking Migration | ✅ | Plugin + Daten von 8300 → 8200 |
| MEC Cleanup | ✅ | Alle MEC-Plugins geloescht |
| Permission-Script | ✅ | Optimiert (50s → 1.4s) |
| Redis Setup | ✅ | WP_REDIS_* konfiguriert |
| FastCGI Cache | ✅ | nginx.conf erstellt |
| Coolify Config | ✅ | Komplettes Deployment-Paket |
| Portal-Fix | ✅ | JavaScript-Redirect |
### Caching-Stack (verifiziert)
| Layer | Test |
|-------|------|
| Redis Object Cache | `redis-cli ping` → PONG |
| Nginx FastCGI Cache | `X-FastCGI-Cache: HIT` |
### Bugfixes
| Problem | Loesung |
|---------|---------|
| Duplicator Pro 500 | PHP memory_limit auf 1024M |
| 502 Bad Gateway | Docker DNS Resolver |
| Kundenportal-Link | JavaScript window.open() |
| FastCGI Cache fehlt | cache_path in http-Block |
---
## Naechste Aufgaben
### Prioritaet 1: Coolify Deployment (17.12.2025)
1. [ ] Domain in .env eintragen
2. [ ] Sichere Passwoerter generieren
3. [ ] Datenbank exportieren + URLs ersetzen
4. [ ] In Coolify deployen
5. [ ] WordPress einrichten
6. [ ] Plugins aktivieren
7. [ ] Redis aktivieren
8. [ ] Finale Tests
### Prioritaet 2: Nach Go-Live
- [ ] SSL/HTTPS pruefen
- [ ] E-Mail-Versand testen
- [ ] Buchungsformular testen
- [ ] sevDesk Integration pruefen
---
## Test-URLs
| Seite | URL |
|-------|-----|
| **Production Ready** | http://192.168.100.93:8200 |
| Staging (Kadence) | http://192.168.100.93:8300 |
| Original (Backup) | http://192.168.100.93:8600 |
| Help-Service | http://192.168.100.93:5050 |
---
## Cache-Test Befehle
```bash
# FastCGI Cache Status
curl -sI http://192.168.100.93:8200/ | grep X-FastCGI-Cache
# Redis Status
docker exec mec_redis_refactoring redis-cli ping
# Cache leeren
docker exec mec_nginx_refactoring rm -rf /var/cache/nginx/fastcgi/*
```
---
## Coolify Environment Variables
```bash
PROJECT_NAME=kursbooking
DOMAIN=islandpferde-melanieworbs.de
DB_NAME=wordpress_kursbooking
DB_USER=wordpress
DB_PASSWORD=<SICHERES_PASSWORT>
DB_ROOT_PASSWORD=<SICHERES_PASSWORT>
TABLE_PREFIX=kb_
```
---
## Quick Links
| Ressource | Beschreibung |
|-----------|--------------|
| [Sprint-Uebersicht](entwicklung/sprint-uebersicht) | Alle Sprints |
| [Shortcodes](shortcodes) | Shortcode-Dokumentation |
| [Buchungsfelder](buchungsfelder-uebersicht) | Feld-Konfiguration |
---
**Session beendet:** 16.12.2025
**Naechste Session:** Production Deployment auf Coolify

View File

@@ -0,0 +1,214 @@
---
id: sprint-uebersicht
title: Sprint-Uebersicht
icon: kanban
description: Aktueller Entwicklungsstand und Sprint-Status
section: Entwicklung
tags: [Sprints, Entwicklung, Status, Roadmap]
related: [entwicklung/next-session, features]
order: 91
---
# Sprint-Uebersicht
Aktueller Entwicklungsstand des Kurs-Booking Plugins.
---
## Status Gesamt
**Fortschritt:** 95% - PRODUCTION READY
**Letztes Update:** 16. Dezember 2025
**Deployment:** 17. Dezember 2025 via Coolify
---
## Sprint-Tabelle
| Sprint | Thema | Status |
|--------|-------|--------|
| **1** | Grundgeruest | ✅ Erledigt |
| **2** | Buchungsflow | ✅ Erledigt |
| **2.5** | Einstellungen komplett | ✅ Erledigt |
| **2.6** | Settings-Integration | ✅ Erledigt |
| **3** | sevDesk Integration | ✅ Erledigt |
| **4.1** | Video Post-Type | ✅ Erledigt |
| **4.2** | Video-Service (Python) | ✅ Erledigt |
| **4.3** | Kurstypen-Matrix | ✅ Erledigt |
| **4.6** | Standalone Video-Verkauf | ✅ Erledigt |
| **4.7** | Video-Upload Admin UI | ✅ Erledigt |
| **4.9** | Video-Bundles | ✅ Erledigt |
| **4.10** | Flexible Preisvarianten | ✅ Erledigt |
| **4.11** | Kurs-spezifische Buchungsfelder | ✅ Erledigt |
| **4.12** | Video-Streaming E2E | ✅ Erledigt |
| **5** | Kadence Migration | 🔄 Pausiert |
| **6** | Stornierung + E-Mail | ✅ Erledigt |
| **6.6** | Portal-Feldsynchronisation | ✅ Erledigt |
| **7** | E-Mail Template Editor | ✅ Erledigt |
| **7.5** | Stammdaten + Vorlagen | ✅ Erledigt |
| **7.6** | Admin-Optimierungen | ✅ Erledigt |
| **7.7** | Modul-System Integration | ✅ Erledigt |
| **7.8** | Frontend-Anzeige-Optionen | ✅ Erledigt |
| **7.9** | Admin-Menue-Optimierung | ✅ Erledigt |
| **8** | Dienstleistungs-Matrix | ✅ Erledigt |
| **8.6** | Feldbaum + Shortcodes | ✅ Erledigt |
| **PROD** | Production Deployment | ✅ Bereit |
| **9** | Pop-up Neuigkeiten | ✅ Erledigt |
| **10** | Kontext-Hilfe-System | ✅ Erledigt |
| **11** | Custom Database Tables | ✅ Erledigt |
---
## Production Deployment (16.12.2025)
### Erledigte Aufgaben
| Task | Status |
|------|--------|
| Kurs-Booking auf Port 8200 | ✅ |
| Redis Object Cache | ✅ |
| Nginx FastCGI Cache | ✅ |
| Coolify Config erstellt | ✅ |
| MEC-Plugins entfernt | ✅ |
| Permission-Script optimiert | ✅ |
### Caching-Stack
| Layer | Funktion |
|-------|----------|
| Redis Object Cache | DB-Query Caching |
| Nginx FastCGI Cache | HTML ohne PHP |
### Deployment-Dateien
```
coolify/
├── docker-compose.yml
├── nginx/nginx.conf
├── nginx/default.conf
├── docker-entrypoint-permissions.sh
└── DEPLOYMENT-CHECKLIST.md
```
---
## Abgeschlossene Meilensteine
### Sprint PROD: Production Deployment (16.12.2025)
- Kurs-Booking von Staging → Production (Port 8200)
- Redis Object Cache konfiguriert
- Nginx FastCGI Cache konfiguriert
- Coolify docker-compose.yml erstellt
- MEC-Plugins entfernt
- Bugfixes: 502 Gateway, Portal-Link, Duplicator Pro
### Sprint 8.6: Feldbaum + Shortcodes (11.12.2025)
- Feldbaum-Visualisierung mit Export (JSON/MD/CSV)
- `[kurs_field]` Shortcode fuer alle Felder
- Shortcode-Dokumentation im Help-Service
- Unterstuetzung fuer eigene Produktarten
### Sprint 8: Dienstleistungs-Matrix (08.12.2025)
- Selbst definierbare Produktarten (A-L + eigene)
- class-dienstleistungen.php fuer CRUD
- class-field-filter.php fuer bedingte Felder
- Matrix-Popup fuer Produktart-Zuordnung
### Sprint 7.7: Modul-System (04.12.2025)
- 9 Feature-Module ein-/ausschaltbar
- `is_module_active()` Helper-Funktion
- Bedingte UI-Elemente
---
## Abgeschlossen: Sprint 9
### Sprint 9: Pop-up Neuigkeiten (16.12.2025)
Marketing-Popup-System fuer Kursbewerbung:
- Freie Kursauswahl (einzeln, Kategorie, Produktart, alle)
- Zufaellige Anzeige aus Kurs-Pool
- Cookie-basierte Steuerung
- Statistiken (Views, Klicks, Schliessungen)
- Neue "Marketing" Sektion im Help-Service
### Sprint 10: Kontext-Hilfe-System (16.12.2025)
Info-Icons mit Tooltips direkt in der Admin-UI:
- Helper-Methode `render_help_icon()` / `help_icon()`
- CSS Tooltip-Styles mit 4 Positionsoptionen
- Info-Icons bei wichtigen Feldern (Kleinunternehmer, Module, Rechtliches, IBAN)
- Link zu ausfuehrlicher Dokumentation im Tooltip
### Sprint 11: Custom Database Tables (16.12.2025)
Performance-Optimierung bei >5.000 Buchungen:
- Custom Table `wp_kurs_buchungen` mit optimierten Indizes
- Repository-Pattern fuer schnelle Abfragen
- Denormalisierte Speicherung fuer Aggregationen
- Admin-UI fuer Migration mit Fortschrittsbalken
- Automatische Sync bei Buchungs-Aenderungen
### Geplante Sprints
(Derzeit keine weiteren Sprints geplant)
---
## Produktarten-Matrix
| ID | Name | Buchungsart | Terminart |
|----|------|-------------|-----------|
| A | Praesenz-Kurs | Direkt | Fix |
| B | Workshop | Direkt | Fix |
| C | Webinar | Direkt | Fix |
| D | Mental Coaching | Direkt | Fix |
| D1 | Einzel-Coaching | Anfrage | Individuell |
| E | Video-Kurs | Direkt | Unbegrenzt |
| F | Video-Paket | Direkt | Unbegrenzt |
| G | Webinar Live | Direkt | Fix |
| H | Workshop Online | Direkt | Fix |
| I | Coaching Online | Anfrage | Individuell |
| J | Online Unterricht | Anfrage | Individuell |
| K | Video-Analyse | Anfrage | - |
| L | Beratung | Anfrage | Individuell |
---
## Plugin-Struktur
```
kurs-booking/
├── includes/
│ ├── class-kurs.php
│ ├── class-buchung.php
│ ├── class-settings.php
│ ├── class-dienstleistungen.php
│ ├── class-field-filter.php
│ ├── class-field-tree.php
│ ├── class-sevdesk.php
│ └── ...
├── templates/
├── assets/
└── help-service/
```
---
## Test-URLs
| Umgebung | URL |
|----------|-----|
| **Production Ready** | http://192.168.100.93:8200 |
| Staging (Kadence) | http://192.168.100.93:8300 |
| Original (Backup) | http://192.168.100.93:8600 |
---
**Detaillierte Dokumentation:** Siehe `docs/kurs-booking/entwicklung/sprints/SPRINT-UEBERSICHT.md`