All files / pages/api startEngagement.js

0% Statements 0/8
100% Branches 0/0
0% Functions 0/1
0% Lines 0/8

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45                                                                                         
import nodemailer from 'nodemailer'
import sanitizeHTML from 'sanitize-html'
 
export default async function (req, res) {
  const transporter = nodemailer.createTransport({
    host: 'smtp.office365.com',
    port: 587,
    secure: false,
    auth: {
      user: process.env.NODEMAILER_EMAIL,
      pass: process.env.NODEMAILER_PASSWORD,
    },
  })
 
  try {
    await transporter.sendMail({
      from: process.env.NODEMAILER_EMAIL,
      to: process.env.NODEMAILER_EMAIL,
      subject: 'Start Dojo Team Engagement',
      html: `<dl>
        <dt><b>First Name:</b></dt><dt>${sanitizeHTML(req.body.first_name)}</dt>
        <dt><b>Last Name:</b></dt><dt>${sanitizeHTML(req.body.last_name)}</dt>
        <dt><b>Email:</b></dt><dt>${sanitizeHTML(req.body.email)}</dt>
        <dt><b>Team Name:</b></dt><dt>${sanitizeHTML(req.body.team_name)}</dt>
        <dt><b>Work Location:</b></dt><dt>${sanitizeHTML(
          req.body.work_location
        )}</dt>
        <dt><b>Dates in mind?:</b></dt><dt>${sanitizeHTML(req.body.dates)}</dt>
        <dt><b>Subject to train:</b></dt><dt>${sanitizeHTML(
          req.body.practice
        )}</dt>
        <dt><b>What to know about them:</b></dt><dt>${sanitizeHTML(
          req.body.what_else
        )}</dt>
        <dt><b>How did they find us?:</b></dt><dt>${sanitizeHTML(
          req.body.how_find
        )}</dt>
      </dl>`,
    })
    res.status(200).json({ message: 'success' })
  } catch (e) {
    res.status(500).json({ message: 'failed to send' })
  }
}