2024-06-11 17:13:45 +00:00

42 lines
1013 B
JavaScript

import templates from "../../templates"
export default {
useContext: ["mailTransporter"],
middlewares: ["withAuthentication"],
fn: async (req, res) => {
req.body = await req.urlencoded()
let { to, subject, body, template } = req.body
if (template) {
if (!templates[template]) {
throw new OperationError(404, "Template not found")
}
body = templates[template]({
...req.body
})
}
const mailOptions = {
from: process.env.SMTP_USERNAME,
to: to,
subject: subject,
html: body
}
console.log(mailOptions)
console.log(`Sending email to ${to}...`)
const result = await this.default.contexts.mailTransporter.sendMail(mailOptions)
console.log("Email sent! >", result)
return res.json({
code: 0,
message: "ok",
result: result
})
}
}