import nodemailer from 'nodemailer' const transporter = nodemailer.createTransport({ host: process.env.SMTP_HOST, port: parseInt(process.env.SMTP_PORT || '465'), secure: true, // true for 465, false for other ports auth: { user: process.env.SMTP_USER, pass: process.env.SMTP_PASS, }, }) export async function sendInvitationEmail( to: string, inviterName: string, treeName: string, role: string, password?: string ) { const loginUrl = `${process.env.NEXTAUTH_URL}/auth/signin` const roleText = role === 'EDITOR' ? '编辑者' : '查看者' let htmlContent = `

家族树协作邀请

您好,

${inviterName} 邀请您作为 ${roleText} 加入家族树 "${treeName}"

` if (password) { htmlContent += `

您的初始登录密码为:
${password}

请使用您的邮箱 (${to}) 和上述密码登录。

` } else { htmlContent += `

您可以使用现有的账号登录查看。

` } htmlContent += `

立即登录

此邮件由中华家谱系统自动发送,请勿回复。

` await transporter.sendMail({ from: process.env.SMTP_FROM, to, subject: `[中华家谱] ${inviterName} 邀请您协作`, html: htmlContent, }) }