Files
miriamgemeinde/config/email.js

67 lines
2.2 KiB
JavaScript

const nodemailer = require('nodemailer');
// E-Mail-Konfiguration
const smtpConfig = {
host: process.env.SMTP_HOST || 'smtp.1blu.de',
port: process.env.SMTP_PORT || 465,
secure: true, // true für 465, false für andere Ports
auth: {
user: process.env.SMTP_USER || 'e226079_0-kontakt',
pass: process.env.SMTP_PASS || 'aNN31bll3Na!'
}
};
// Debug-Logging der SMTP-Konfiguration
const transporter = nodemailer.createTransport(smtpConfig);
// E-Mail-Template für Passwort-Reset
const getPasswordResetEmailTemplate = (resetUrl, userName) => {
return {
subject: 'Passwort zurücksetzen - Miriam Gemeinde',
html: `
<div style="font-family: Arial, sans-serif; max-width: 600px; margin: 0 auto;">
<h2 style="color: #333;">Passwort zurücksetzen</h2>
<p>Hallo ${userName},</p>
<p>Sie haben eine Anfrage zum Zurücksetzen Ihres Passworts gestellt.</p>
<p>Klicken Sie auf den folgenden Link, um ein neues Passwort zu erstellen:</p>
<p style="margin: 20px 0;">
<a href="${resetUrl}"
style="background-color: #007bff; color: white; padding: 12px 24px; text-decoration: none; border-radius: 4px; display: inline-block;">
Passwort zurücksetzen
</a>
</p>
<p>Dieser Link ist 1 Stunde gültig.</p>
<p>Falls Sie diese Anfrage nicht gestellt haben, können Sie diese E-Mail ignorieren.</p>
<hr style="margin: 30px 0; border: none; border-top: 1px solid #eee;">
<p style="color: #666; font-size: 12px;">
Miriam Gemeinde<br>
Diese E-Mail wurde automatisch generiert.
</p>
</div>
`,
text: `
Passwort zurücksetzen - Miriam Gemeinde
Hallo ${userName},
Sie haben eine Anfrage zum Zurücksetzen Ihres Passworts gestellt.
Klicken Sie auf den folgenden Link, um ein neues Passwort zu erstellen:
${resetUrl}
Dieser Link ist 1 Stunde gültig.
Falls Sie diese Anfrage nicht gestellt haben, können Sie diese E-Mail ignorieren.
---
Miriam Gemeinde
Diese E-Mail wurde automatisch generiert.
`
};
};
module.exports = {
transporter,
getPasswordResetEmailTemplate
};