# E-Mail-Konfiguration für das Kontaktformular

## Aktuelle Konfiguration

Das Kontaktformular ist jetzt funktionsfähig! Es verwendet die gleiche E-Mail-Konfiguration wie das bestehende System:

```yaml
framework:
    mailer:
        dsn: '%env(MAILER_DSN)%'  # Echte SMTP-Konfiguration aus .env
        envelope:
            sender: '%env(MAILER_FROM)%'
        headers:
            from: '%env(MAILER_FROM)%'
```

**E-Mail-Konfiguration aus .env:**
- **SMTP-Server:** mx2f92.netcup.net:587
- **E-Mail-Adresse:** terminbuchung@dpohl-engineering.de (für SMTP-Authentifizierung)
- **Verschlüsselung:** STARTTLS
- **Authentifizierung:** Login

**Kontaktformular-E-Mails:**
- **Administrator-E-Mail:** info@dp-smartsolutions.de
- **Absender-E-Mail:** info@dp-smartsolutions.de (nur für Kontaktformular)
- **SMTP-Authentifizierung:** terminbuchung@dpohl-engineering.de (aus .env)

**Hinweis:** Das Kontaktformular sendet jetzt echte E-Mails über den gleichen SMTP-Server wie das bestehende System!

## Entwicklungsumgebung

Für die lokale Entwicklung können Sie einen der folgenden Ansätze verwenden:

### Option 1: Null Transport (Aktuell aktiv - Ohne Docker)
- **Simuliert** E-Mail-Versand ohne tatsächlichen SMTP-Server
- **Perfekt für lokale Entwicklung** ohne Docker
- **Keine E-Mails** werden tatsächlich versendet
- **Formular funktioniert** vollständig mit Erfolgsmeldung

### Option 2: Mailtrap (Empfohlen für E-Mail-Tests)
1. Gehen Sie zu [mailtrap.io](https://mailtrap.io) und erstellen Sie ein kostenloses Konto
2. Erstellen Sie einen neuen Inbox
3. Kopieren Sie die SMTP-Einstellungen
4. Aktualisieren Sie `config/packages/mailer.yaml`:

```yaml
framework:
    mailer:
        dsn: 'smtp://username:password@smtp.mailtrap.io:2525'
        envelope:
            sender: 'noreply@dp-smartsolutions.de'
        headers:
            from: 'noreply@dp-smartsolutions.de'
```

### Option 3: Lokaler SMTP-Server
Installieren Sie MailHog oder einen ähnlichen lokalen SMTP-Server:

```bash
# Mit Docker
docker run -d -p 1025:1025 -p 8025:8025 mailhog/mailhog

# Dann in mailer.yaml:
framework:
    mailer:
        dsn: 'smtp://localhost:1025'
```

## Produktionsumgebung

Für die Produktion verwenden Sie einen echten SMTP-Server:

### Beispiel mit Gmail:
```yaml
framework:
    mailer:
        dsn: 'smtp://username:app-password@smtp.gmail.com:587'
        envelope:
            sender: 'noreply@dp-smartsolutions.de'
        headers:
            from: 'noreply@dp-smartsolutions.de'
```

### Beispiel mit einem anderen SMTP-Server:
```yaml
framework:
    mailer:
        dsn: 'smtp://username:password@smtp.example.com:587'
        envelope:
            sender: 'noreply@dp-smartsolutions.de'
        headers:
            from: 'noreply@dp-smartsolutions.de'
```

## Sicherheitshinweise

1. **App-Passwörter verwenden**: Bei Gmail und anderen Anbietern sollten Sie App-spezifische Passwörter verwenden
2. **Umgebungsvariablen**: In der Produktion sollten Sie die E-Mail-Einstellungen in Umgebungsvariablen speichern
3. **SPF/DKIM**: Konfigurieren Sie SPF und DKIM für bessere E-Mail-Zustellung

## Testen des Kontaktformulars

1. Starten Sie den Symfony-Server: `symfony server:start`
2. Gehen Sie zu `http://localhost:8000/dpohl`
3. Scrollen Sie zum Kontaktformular
4. Füllen Sie das Formular aus und senden Sie es ab
5. Überprüfen Sie die E-Mails in Ihrem SMTP-Server (Mailtrap, MailHog, etc.)

## Troubleshooting

### E-Mails werden nicht versendet
- Überprüfen Sie die SMTP-Einstellungen
- Schauen Sie in die Symfony-Logs: `var/log/dev.log`
- Testen Sie die Verbindung zum SMTP-Server

### CORS-Fehler
- Stellen Sie sicher, dass die Route `/contact` korrekt konfiguriert ist
- Überprüfen Sie die JavaScript-Fetch-Anfrage

### Validierungsfehler
- Überprüfen Sie, ob alle erforderlichen Felder ausgefüllt sind
- Stellen Sie sicher, dass die E-Mail-Adresse gültig ist
