Files
Atlas/DEVELOPMENT-MODE.md
Julia Wehden a2c95c70e7 feat: Equipment-System, Buchungsbearbeitung, Kundenadresse, LexOffice-Fix
- 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
2026-03-19 16:21:55 +01:00

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