- Vintage Modell hinzugefuegt - Equipment Multi-Select (Neue Buchung + Bearbeitung) - Kundenadresse in Formularen - Bearbeiten-Seite fuer Buchungen - Abbau-Zeiten in Formularen und Uebersicht - Vertrag PDF nur bei Privatkunden - LexOffice Kontakt-Erstellung Fix (BUSINESS) - Zurueck-Pfeil auf Touren-Seite
185 lines
4.7 KiB
Markdown
185 lines
4.7 KiB
Markdown
# 🛡️ Sicherer Development-Modus
|
|
|
|
## Aktuelles Problem
|
|
Sie entwickeln noch, aber **echte Buchungen** könnten bereits über Ihre Websites reinkommen (hamburg-fotobox.de, fotobox-luebeck.de, etc.). Diese sollen NICHT automatisch verarbeitet werden!
|
|
|
|
---
|
|
|
|
## ✅ Lösung: Feature-Flags
|
|
|
|
Fügen Sie diese Zeilen in Ihre `.env` Datei ein:
|
|
|
|
```env
|
|
# ===========================================
|
|
# DEVELOPMENT MODE (für sicheres Testen)
|
|
# ===========================================
|
|
|
|
NODE_ENV="development"
|
|
TEST_MODE="true"
|
|
EMAIL_ENABLED="true"
|
|
AUTO_WORKFLOWS="false"
|
|
AUTO_SEND_CONTRACT="false"
|
|
TEST_EMAIL_RECIPIENT="ihre-test-email@gmail.com"
|
|
```
|
|
|
|
---
|
|
|
|
## 📖 Was bedeuten die Flags?
|
|
|
|
### **TEST_MODE="true"** 🧪
|
|
- **Alle E-Mails werden umgeleitet** an `TEST_EMAIL_RECIPIENT`
|
|
- Echte Kunden bekommen KEINE E-Mails
|
|
- E-Mail enthält Hinweis: "Diese E-Mail wäre an kunde@example.de gegangen"
|
|
- **Betreff:** `[TEST] Ihr Mietvertrag...`
|
|
|
|
### **EMAIL_ENABLED="false"** 📧
|
|
- E-Mail-Versand komplett deaktiviert
|
|
- Nur Logs in der Konsole
|
|
- Gut für lokales Testen ohne echte SMTP-Verbindung
|
|
|
|
### **AUTO_WORKFLOWS="false"** 🚫
|
|
- Keine automatischen Aktionen
|
|
- Alles manuell über Buttons steuern
|
|
- Maximale Kontrolle über jeden Schritt
|
|
|
|
### **AUTO_SEND_CONTRACT="false"** 📄
|
|
- Vertrag wird NICHT automatisch versendet
|
|
- Nur manuell über "Vertrag senden" Button
|
|
- Sie entscheiden, wann versendet wird
|
|
|
|
---
|
|
|
|
## 🎯 Empfohlene Einstellungen
|
|
|
|
### **JETZT (Development/Testing):**
|
|
```env
|
|
NODE_ENV="development"
|
|
TEST_MODE="true"
|
|
EMAIL_ENABLED="true"
|
|
AUTO_WORKFLOWS="false"
|
|
AUTO_SEND_CONTRACT="false"
|
|
TEST_EMAIL_RECIPIENT="ihre-email@example.com" # IHRE Test-E-Mail!
|
|
```
|
|
|
|
**Ergebnis:**
|
|
- ✅ Sie können E-Mails testen
|
|
- ✅ Alle E-Mails kommen bei IHNEN an (nicht beim Kunden)
|
|
- ✅ Keine automatischen Aktionen
|
|
- ✅ Volle Kontrolle über jeden Schritt
|
|
- ✅ Echte Buchungen werden NICHT automatisch bearbeitet
|
|
|
|
### **SPÄTER (Production - wenn alles fertig ist):**
|
|
```env
|
|
NODE_ENV="production"
|
|
TEST_MODE="false"
|
|
EMAIL_ENABLED="true"
|
|
AUTO_WORKFLOWS="true"
|
|
AUTO_SEND_CONTRACT="true"
|
|
# TEST_EMAIL_RECIPIENT nicht benötigt
|
|
```
|
|
|
|
**Ergebnis:**
|
|
- 🚀 E-Mails gehen an echte Kunden
|
|
- 🚀 Automatische Workflows aktiv
|
|
- 🚀 Vertrag wird automatisch versendet bei Bestätigung
|
|
|
|
---
|
|
|
|
## 🧪 Test-Workflow
|
|
|
|
### **So testen Sie sicher:**
|
|
|
|
1. **`.env` konfigurieren:**
|
|
```env
|
|
TEST_MODE="true"
|
|
EMAIL_ENABLED="true"
|
|
TEST_EMAIL_RECIPIENT="ihre-email@gmail.com"
|
|
```
|
|
|
|
2. **Server neu starten:**
|
|
```bash
|
|
# Terminal: Strg+C (Server stoppen)
|
|
npm run dev
|
|
```
|
|
|
|
3. **Test-Buchung anlegen:**
|
|
- Dashboard → Neue Buchung
|
|
- Beispiel-Daten eingeben
|
|
- Standort wählen (z.B. Hamburg)
|
|
|
|
4. **Vertrag generieren & senden:**
|
|
- Buchung öffnen
|
|
- "Vertrag generieren" klicken
|
|
- "Vertrag per E-Mail senden" klicken
|
|
|
|
5. **Prüfen:**
|
|
- E-Mail kommt bei IHRER Test-Adresse an
|
|
- Betreff beginnt mit `[TEST]`
|
|
- Gelber Banner: "Diese E-Mail wäre an kunde@example.de gegangen"
|
|
|
|
---
|
|
|
|
## ⚠️ WICHTIG: Was ist im Test-Modus sicher?
|
|
|
|
| Aktion | Test-Modus | Production |
|
|
|--------|------------|------------|
|
|
| **E-Mail-Versand** | ✅ Geht an IHRE Test-E-Mail | ⚠️ Geht an echten Kunden |
|
|
| **Vertragsgenerierung** | ✅ Funktioniert normal | ✅ Funktioniert normal |
|
|
| **Datenbank** | ⚠️ Echte Daten (shared!) | ⚠️ Echte Daten |
|
|
| **Nextcloud-Sync** | ✅ Funktioniert normal | ✅ Funktioniert normal |
|
|
| **Automatik** | ❌ Deaktiviert | ✅ Aktiv |
|
|
|
|
---
|
|
|
|
## 🎨 Visuelles Warning
|
|
|
|
Im Dashboard sehen Sie oben ein **gelbes Banner**, wenn Test-Modus aktiv ist:
|
|
|
|
```
|
|
🧪 TEST-MODUS AKTIV
|
|
Alle E-Mails werden an ihre-email@example.com umgeleitet.
|
|
Echte Kunden erhalten KEINE E-Mails.
|
|
```
|
|
|
|
---
|
|
|
|
## 🔒 Sicherheits-Checkliste
|
|
|
|
Vor dem Live-Gang (Production):
|
|
|
|
- [ ] `TEST_MODE="false"` setzen
|
|
- [ ] `AUTO_WORKFLOWS="true"` aktivieren (wenn gewünscht)
|
|
- [ ] `AUTO_SEND_CONTRACT="true"` aktivieren (wenn gewünscht)
|
|
- [ ] `TEST_EMAIL_RECIPIENT` entfernen oder leer lassen
|
|
- [ ] Server neu starten
|
|
- [ ] Test-Buchung mit echter E-Mail probieren
|
|
- [ ] Prüfen: E-Mail geht an Kunden (nicht an Test-Adresse)
|
|
|
|
---
|
|
|
|
## 🐛 Troubleshooting
|
|
|
|
### E-Mails kommen nicht an
|
|
1. Prüfen: `EMAIL_ENABLED="true"`?
|
|
2. Terminal-Logs prüfen: `✅ Email sent` oder Fehler?
|
|
3. SMTP-Daten korrekt in Location-Einstellungen?
|
|
|
|
### E-Mails gehen immer noch an Kunden
|
|
1. Prüfen: `TEST_MODE="true"`?
|
|
2. `TEST_EMAIL_RECIPIENT` gesetzt?
|
|
3. Server nach `.env`-Änderung neu gestartet?
|
|
|
|
### Test-Banner wird nicht angezeigt
|
|
1. Browser-Cache leeren
|
|
2. Seite neu laden (Strg+Shift+R)
|
|
3. `.env` korrekt gespeichert?
|
|
|
|
---
|
|
|
|
## 📞 Support
|
|
|
|
Bei Fragen während der Entwicklung:
|
|
1. Terminal-Logs prüfen (dort sehen Sie alle E-Mail-Aktionen)
|
|
2. Browser-Console öffnen (F12)
|
|
3. Test-E-Mail in Ihrem Postfach prüfen
|