const nodemailer = require('nodemailer') const logger = require('./logger')() require('dotenv').config() // Authenticates with email server and send email class SendEmail { constructor() { this.transporter = nodemailer.createTransport({ host: process.env.SMTP_HOST, port: process.env.SMTP_PORT, secure: process.env.SMTP_TLS, auth: { user: process.env.EMAIL_USERNAME, pass: process.env.EMAIL_PASSWORD }, tls: { rejectUnauthorized: false } }) this.transporter.verify((err, success) => {if (err) {logger.Error(`SMTP Error: ${err.message}`)} else {logger.Info('Logged in successfully')}}) } Send(x) { const options = { from: x.from, to: process.env.email, subject: x.subject, html: x.message } this.transporter.sendMail(options, (err, info) => {if (err) {logger.Error(err)} else {logger.Info('Sent Email')}}) } } module.exports = () => {return new SendEmail()}