const nodemailer = require('nodemailer');

const transporter = nodemailer.createTransport({
    host: process.env.MAIL_HOST,
    port: Number(process.env.MAIL_PORT),
    secure: process.env.MAIL_PORT === '465',
    requireTLS: true,
    auth: {
        user: process.env.MAIL_USER,
        pass: process.env.MAIL_PASS
    }
});

module.exports = async function sendAdminMail(data) {
    try {
        if (!process.env.ADMIN_MAIL) {
            console.warn('⚠️ ADMIN_MAIL nicht gesetzt');
            return;
        }

        await transporter.sendMail({
            from: `"Plusfit System" <${process.env.MAIL_USER}>`,
            to: process.env.ADMIN_MAIL,
            subject: `🆕 Neuer Vertrag abgeschlossen – ${data.vertragsnummer}`,
            text: `
Neuer Vertragsabschluss bei Plusfit

----------------------------------
Vertragsnummer: ${data.vertragsnummer}
Name: ${data.vorname} ${data.nachname}
E-Mail: ${data.email}

Vertragsart: ${data.vertragName}
Beitrag: ${data.betrag.toFixed(2)} € / Monat

Abgeschlossen am: ${new Date(data.datum).toLocaleString('de-DE')}
IP-Adresse: ${data.ip}

----------------------------------
Hinweis:
Diese Mail dient nur zur Information.
            `.trim()
        });

        console.log(`📬 Admin-Mail gesendet (${process.env.ADMIN_MAIL})`);

    } catch (err) {
        console.error('❌ Fehler beim Versand der Admin-Mail:', err.message);
    }
};
