package services

// Default German email templates for authentication and security events.
// Templates: Welcome, Email Verification, Password Reset, Password Changed,
// 2FA Enabled, 2FA Disabled, New Device Login, Suspicious Activity,
// Account Locked, Account Unlocked.

func (s *EmailTemplateService) getWelcomeTemplateDE() (string, string, string) {
	subject := "Willkommen bei BreakPilot!"
	bodyHTML := `<!DOCTYPE html>
<html>
<head><meta charset="utf-8"></head>
<body style="font-family: Arial, sans-serif; line-height: 1.6; color: #333;">
<div style="max-width: 600px; margin: 0 auto; padding: 20px;">
    <h1 style="color: #2563eb;">Willkommen bei BreakPilot!</h1>
    <p>Hallo {{user_name}},</p>
    <p>vielen Dank für Ihre Registrierung bei BreakPilot. Ihr Konto wurde erfolgreich erstellt.</p>
    <p>Sie können sich jetzt mit Ihrer E-Mail-Adresse <strong>{{user_email}}</strong> anmelden:</p>
    <p style="text-align: center; margin: 30px 0;">
        <a href="{{login_url}}" style="background-color: #2563eb; color: white; padding: 12px 24px; text-decoration: none; border-radius: 5px;">Jetzt anmelden</a>
    </p>
    <p>Bei Fragen stehen wir Ihnen gerne zur Verfügung unter {{support_email}}.</p>
    <p>Mit freundlichen Grüßen,<br>Ihr BreakPilot-Team</p>
</div>
</body>
</html>`
	bodyText := `Willkommen bei BreakPilot!

Hallo {{user_name}},

vielen Dank für Ihre Registrierung bei BreakPilot. Ihr Konto wurde erfolgreich erstellt.

Sie können sich jetzt mit Ihrer E-Mail-Adresse {{user_email}} anmelden:
{{login_url}}

Bei Fragen stehen wir Ihnen gerne zur Verfügung unter {{support_email}}.

Mit freundlichen Grüßen,
Ihr BreakPilot-Team`
	return subject, bodyHTML, bodyText
}

func (s *EmailTemplateService) getEmailVerificationTemplateDE() (string, string, string) {
	subject := "Bitte bestätigen Sie Ihre E-Mail-Adresse"
	bodyHTML := `<!DOCTYPE html>
<html>
<head><meta charset="utf-8"></head>
<body style="font-family: Arial, sans-serif; line-height: 1.6; color: #333;">
<div style="max-width: 600px; margin: 0 auto; padding: 20px;">
    <h1 style="color: #2563eb;">E-Mail-Adresse bestätigen</h1>
    <p>Hallo {{user_name}},</p>
    <p>bitte bestätigen Sie Ihre E-Mail-Adresse, indem Sie auf den folgenden Link klicken:</p>
    <p style="text-align: center; margin: 30px 0;">
        <a href="{{verification_url}}" style="background-color: #2563eb; color: white; padding: 12px 24px; text-decoration: none; border-radius: 5px;">E-Mail bestätigen</a>
    </p>
    <p>Alternativ können Sie auch diesen Bestätigungscode eingeben: <strong>{{verification_code}}</strong></p>
    <p><strong>Hinweis:</strong> Dieser Link ist nur {{expires_in}} gültig.</p>
    <p>Falls Sie diese E-Mail nicht angefordert haben, können Sie sie ignorieren.</p>
    <p>Mit freundlichen Grüßen,<br>Ihr BreakPilot-Team</p>
</div>
</body>
</html>`
	bodyText := `E-Mail-Adresse bestätigen

Hallo {{user_name}},

bitte bestätigen Sie Ihre E-Mail-Adresse, indem Sie auf den folgenden Link klicken:
{{verification_url}}

Alternativ können Sie auch diesen Bestätigungscode eingeben: {{verification_code}}

Hinweis: Dieser Link ist nur {{expires_in}} gültig.

Falls Sie diese E-Mail nicht angefordert haben, können Sie sie ignorieren.

Mit freundlichen Grüßen,
Ihr BreakPilot-Team`
	return subject, bodyHTML, bodyText
}

func (s *EmailTemplateService) getPasswordResetTemplateDE() (string, string, string) {
	subject := "Passwort zurücksetzen"
	bodyHTML := `<!DOCTYPE html>
<html>
<head><meta charset="utf-8"></head>
<body style="font-family: Arial, sans-serif; line-height: 1.6; color: #333;">
<div style="max-width: 600px; margin: 0 auto; padding: 20px;">
    <h1 style="color: #2563eb;">Passwort zurücksetzen</h1>
    <p>Hallo {{user_name}},</p>
    <p>Sie haben eine Anfrage zum Zurücksetzen Ihres Passworts gestellt. Klicken Sie auf den folgenden Link, um ein neues Passwort festzulegen:</p>
    <p style="text-align: center; margin: 30px 0;">
        <a href="{{reset_url}}" style="background-color: #2563eb; color: white; padding: 12px 24px; text-decoration: none; border-radius: 5px;">Neues Passwort festlegen</a>
    </p>
    <p>Alternativ können Sie auch diesen Code verwenden: <strong>{{reset_code}}</strong></p>
    <p><strong>Hinweis:</strong> Dieser Link ist nur {{expires_in}} gültig.</p>
    <p style="background-color: #fef3c7; padding: 15px; border-radius: 5px; margin: 20px 0;">
        <strong>Sicherheitshinweis:</strong> Diese Anfrage wurde von der IP-Adresse {{ip_address}} gestellt. Falls Sie diese Anfrage nicht gestellt haben, ignorieren Sie diese E-Mail und Ihr Passwort bleibt unverändert.
    </p>
    <p>Mit freundlichen Grüßen,<br>Ihr BreakPilot-Team</p>
</div>
</body>
</html>`
	bodyText := `Passwort zurücksetzen

Hallo {{user_name}},

Sie haben eine Anfrage zum Zurücksetzen Ihres Passworts gestellt. Klicken Sie auf den folgenden Link, um ein neues Passwort festzulegen:
{{reset_url}}

Alternativ können Sie auch diesen Code verwenden: {{reset_code}}

Hinweis: Dieser Link ist nur {{expires_in}} gültig.

Sicherheitshinweis: Diese Anfrage wurde von der IP-Adresse {{ip_address}} gestellt. Falls Sie diese Anfrage nicht gestellt haben, ignorieren Sie diese E-Mail und Ihr Passwort bleibt unverändert.

Mit freundlichen Grüßen,
Ihr BreakPilot-Team`
	return subject, bodyHTML, bodyText
}

func (s *EmailTemplateService) getPasswordChangedTemplateDE() (string, string, string) {
	subject := "Ihr Passwort wurde geändert"
	bodyHTML := `<!DOCTYPE html>
<html>
<head><meta charset="utf-8"></head>
<body style="font-family: Arial, sans-serif; line-height: 1.6; color: #333;">
<div style="max-width: 600px; margin: 0 auto; padding: 20px;">
    <h1 style="color: #2563eb;">Passwort geändert</h1>
    <p>Hallo {{user_name}},</p>
    <p>Ihr Passwort wurde am {{changed_at}} erfolgreich geändert.</p>
    <p><strong>Details:</strong></p>
    <ul>
        <li>IP-Adresse: {{ip_address}}</li>
        <li>Gerät: {{device_info}}</li>
    </ul>
    <p style="background-color: #fee2e2; padding: 15px; border-radius: 5px; margin: 20px 0;">
        <strong>Nicht Sie?</strong> Falls Sie diese Änderung nicht vorgenommen haben, kontaktieren Sie uns sofort unter {{support_url}}.
    </p>
    <p>Mit freundlichen Grüßen,<br>Ihr BreakPilot-Team</p>
</div>
</body>
</html>`
	bodyText := `Passwort geändert

Hallo {{user_name}},

Ihr Passwort wurde am {{changed_at}} erfolgreich geändert.

Details:
- IP-Adresse: {{ip_address}}
- Gerät: {{device_info}}

Nicht Sie? Falls Sie diese Änderung nicht vorgenommen haben, kontaktieren Sie uns sofort unter {{support_url}}.

Mit freundlichen Grüßen,
Ihr BreakPilot-Team`
	return subject, bodyHTML, bodyText
}

func (s *EmailTemplateService) get2FAEnabledTemplateDE() (string, string, string) {
	subject := "Zwei-Faktor-Authentifizierung aktiviert"
	bodyHTML := `<!DOCTYPE html>
<html>
<head><meta charset="utf-8"></head>
<body style="font-family: Arial, sans-serif; line-height: 1.6; color: #333;">
<div style="max-width: 600px; margin: 0 auto; padding: 20px;">
    <h1 style="color: #059669;">2FA aktiviert</h1>
    <p>Hallo {{user_name}},</p>
    <p>Die Zwei-Faktor-Authentifizierung wurde am {{enabled_at}} für Ihr Konto aktiviert.</p>
    <p><strong>Gerät:</strong> {{device_info}}</p>
    <p style="background-color: #d1fae5; padding: 15px; border-radius: 5px; margin: 20px 0;">
        <strong>Sicherheitstipp:</strong> Bewahren Sie Ihre Recovery-Codes sicher auf. Sie benötigen diese, falls Sie den Zugang zu Ihrer Authenticator-App verlieren.
    </p>
    <p>Sie können Ihre 2FA-Einstellungen jederzeit unter {{security_url}} verwalten.</p>
    <p>Mit freundlichen Grüßen,<br>Ihr BreakPilot-Team</p>
</div>
</body>
</html>`
	bodyText := `2FA aktiviert

Hallo {{user_name}},

Die Zwei-Faktor-Authentifizierung wurde am {{enabled_at}} für Ihr Konto aktiviert.

Gerät: {{device_info}}

Sicherheitstipp: Bewahren Sie Ihre Recovery-Codes sicher auf. Sie benötigen diese, falls Sie den Zugang zu Ihrer Authenticator-App verlieren.

Sie können Ihre 2FA-Einstellungen jederzeit unter {{security_url}} verwalten.

Mit freundlichen Grüßen,
Ihr BreakPilot-Team`
	return subject, bodyHTML, bodyText
}

func (s *EmailTemplateService) get2FADisabledTemplateDE() (string, string, string) {
	subject := "Zwei-Faktor-Authentifizierung deaktiviert"
	bodyHTML := `<!DOCTYPE html>
<html>
<head><meta charset="utf-8"></head>
<body style="font-family: Arial, sans-serif; line-height: 1.6; color: #333;">
<div style="max-width: 600px; margin: 0 auto; padding: 20px;">
    <h1 style="color: #dc2626;">2FA deaktiviert</h1>
    <p>Hallo {{user_name}},</p>
    <p>Die Zwei-Faktor-Authentifizierung wurde am {{disabled_at}} für Ihr Konto deaktiviert.</p>
    <p><strong>IP-Adresse:</strong> {{ip_address}}</p>
    <p style="background-color: #fee2e2; padding: 15px; border-radius: 5px; margin: 20px 0;">
        <strong>Warnung:</strong> Ihr Konto ist jetzt weniger sicher. Wir empfehlen dringend, 2FA wieder zu aktivieren.
    </p>
    <p>Sie können 2FA jederzeit unter {{security_url}} wieder aktivieren.</p>
    <p>Mit freundlichen Grüßen,<br>Ihr BreakPilot-Team</p>
</div>
</body>
</html>`
	bodyText := `2FA deaktiviert

Hallo {{user_name}},

Die Zwei-Faktor-Authentifizierung wurde am {{disabled_at}} für Ihr Konto deaktiviert.

IP-Adresse: {{ip_address}}

Warnung: Ihr Konto ist jetzt weniger sicher. Wir empfehlen dringend, 2FA wieder zu aktivieren.

Sie können 2FA jederzeit unter {{security_url}} wieder aktivieren.

Mit freundlichen Grüßen,
Ihr BreakPilot-Team`
	return subject, bodyHTML, bodyText
}

func (s *EmailTemplateService) getNewDeviceLoginTemplateDE() (string, string, string) {
	subject := "Neuer Login auf Ihrem Konto"
	bodyHTML := `<!DOCTYPE html>
<html>
<head><meta charset="utf-8"></head>
<body style="font-family: Arial, sans-serif; line-height: 1.6; color: #333;">
<div style="max-width: 600px; margin: 0 auto; padding: 20px;">
    <h1 style="color: #f59e0b;">Neuer Login erkannt</h1>
    <p>Hallo {{user_name}},</p>
    <p>Wir haben einen Login auf Ihrem Konto von einem neuen Gerät oder Standort erkannt:</p>
    <ul>
        <li><strong>Zeitpunkt:</strong> {{login_time}}</li>
        <li><strong>IP-Adresse:</strong> {{ip_address}}</li>
        <li><strong>Gerät:</strong> {{device_info}}</li>
        <li><strong>Standort:</strong> {{location}}</li>
    </ul>
    <p style="background-color: #fef3c7; padding: 15px; border-radius: 5px; margin: 20px 0;">
        <strong>Nicht Sie?</strong> Falls Sie diesen Login nicht durchgeführt haben, ändern Sie sofort Ihr Passwort unter {{security_url}}.
    </p>
    <p>Mit freundlichen Grüßen,<br>Ihr BreakPilot-Team</p>
</div>
</body>
</html>`
	bodyText := `Neuer Login erkannt

Hallo {{user_name}},

Wir haben einen Login auf Ihrem Konto von einem neuen Gerät oder Standort erkannt:

- Zeitpunkt: {{login_time}}
- IP-Adresse: {{ip_address}}
- Gerät: {{device_info}}
- Standort: {{location}}

Nicht Sie? Falls Sie diesen Login nicht durchgeführt haben, ändern Sie sofort Ihr Passwort unter {{security_url}}.

Mit freundlichen Grüßen,
Ihr BreakPilot-Team`
	return subject, bodyHTML, bodyText
}

func (s *EmailTemplateService) getSuspiciousActivityTemplateDE() (string, string, string) {
	subject := "Verdächtige Aktivität auf Ihrem Konto"
	bodyHTML := `<!DOCTYPE html>
<html>
<head><meta charset="utf-8"></head>
<body style="font-family: Arial, sans-serif; line-height: 1.6; color: #333;">
<div style="max-width: 600px; margin: 0 auto; padding: 20px;">
    <h1 style="color: #dc2626;">Verdächtige Aktivität erkannt</h1>
    <p>Hallo {{user_name}},</p>
    <p>Wir haben verdächtige Aktivität auf Ihrem Konto festgestellt:</p>
    <ul>
        <li><strong>Art:</strong> {{activity_type}}</li>
        <li><strong>Zeitpunkt:</strong> {{activity_time}}</li>
        <li><strong>IP-Adresse:</strong> {{ip_address}}</li>
    </ul>
    <p style="background-color: #fee2e2; padding: 15px; border-radius: 5px; margin: 20px 0;">
        <strong>Wichtig:</strong> Bitte überprüfen Sie Ihre Sicherheitseinstellungen unter {{security_url}} und ändern Sie Ihr Passwort, falls Sie diese Aktivität nicht selbst durchgeführt haben.
    </p>
    <p>Mit freundlichen Grüßen,<br>Ihr BreakPilot-Team</p>
</div>
</body>
</html>`
	bodyText := `Verdächtige Aktivität erkannt

Hallo {{user_name}},

Wir haben verdächtige Aktivität auf Ihrem Konto festgestellt:

- Art: {{activity_type}}
- Zeitpunkt: {{activity_time}}
- IP-Adresse: {{ip_address}}

Wichtig: Bitte überprüfen Sie Ihre Sicherheitseinstellungen unter {{security_url}} und ändern Sie Ihr Passwort, falls Sie diese Aktivität nicht selbst durchgeführt haben.

Mit freundlichen Grüßen,
Ihr BreakPilot-Team`
	return subject, bodyHTML, bodyText
}

func (s *EmailTemplateService) getAccountLockedTemplateDE() (string, string, string) {
	subject := "Ihr Konto wurde gesperrt"
	bodyHTML := `<!DOCTYPE html>
<html>
<head><meta charset="utf-8"></head>
<body style="font-family: Arial, sans-serif; line-height: 1.6; color: #333;">
<div style="max-width: 600px; margin: 0 auto; padding: 20px;">
    <h1 style="color: #dc2626;">Konto gesperrt</h1>
    <p>Hallo {{user_name}},</p>
    <p>Ihr Konto wurde am {{locked_at}} aus folgendem Grund gesperrt:</p>
    <p style="background-color: #fee2e2; padding: 15px; border-radius: 5px; margin: 20px 0;">
        {{reason}}
    </p>
    <p>Ihr Konto wird automatisch entsperrt am: <strong>{{unlock_time}}</strong></p>
    <p>Falls Sie Hilfe benötigen, kontaktieren Sie uns unter {{support_url}}.</p>
    <p>Mit freundlichen Grüßen,<br>Ihr BreakPilot-Team</p>
</div>
</body>
</html>`
	bodyText := `Konto gesperrt

Hallo {{user_name}},

Ihr Konto wurde am {{locked_at}} aus folgendem Grund gesperrt:

{{reason}}

Ihr Konto wird automatisch entsperrt am: {{unlock_time}}

Falls Sie Hilfe benötigen, kontaktieren Sie uns unter {{support_url}}.

Mit freundlichen Grüßen,
Ihr BreakPilot-Team`
	return subject, bodyHTML, bodyText
}

func (s *EmailTemplateService) getAccountUnlockedTemplateDE() (string, string, string) {
	subject := "Ihr Konto wurde entsperrt"
	bodyHTML := `<!DOCTYPE html>
<html>
<head><meta charset="utf-8"></head>
<body style="font-family: Arial, sans-serif; line-height: 1.6; color: #333;">
<div style="max-width: 600px; margin: 0 auto; padding: 20px;">
    <h1 style="color: #059669;">Konto entsperrt</h1>
    <p>Hallo {{user_name}},</p>
    <p>Ihr Konto wurde am {{unlocked_at}} erfolgreich entsperrt.</p>
    <p style="text-align: center; margin: 30px 0;">
        <a href="{{login_url}}" style="background-color: #2563eb; color: white; padding: 12px 24px; text-decoration: none; border-radius: 5px;">Jetzt anmelden</a>
    </p>
    <p>Mit freundlichen Grüßen,<br>Ihr BreakPilot-Team</p>
</div>
</body>
</html>`
	bodyText := `Konto entsperrt

Hallo {{user_name}},

Ihr Konto wurde am {{unlocked_at}} erfolgreich entsperrt.

Sie können sich jetzt wieder anmelden: {{login_url}}

Mit freundlichen Grüßen,
Ihr BreakPilot-Team`
	return subject, bodyHTML, bodyText
}
