const nodemailer = require('nodemailer');
const sendMail = async (to, subject, html, context) => {
return new Promise(async (resolve, reject) => {
try {
// Create a nodemailer transporter using your email service provider's SMTP settings
let transporter;
let sendingMail;
if (context == "noreply") {
sendingMail = 'donotreply@needapair.com'
transporter = await nodemailer.createTransport({
host: 'business55.web-hosting.com',
port: 465,
auth: {
user: 'donotreply@needapair.com',
pass: 'rt*_rLWAVtvR'
},
tls: {
// Do not fail on invalid certs
rejectUnauthorized: false
}
});
} else if (context == "info") {
sendingMail = 'info@needapair.com'
transporter = await nodemailer.createTransport({
host: 'business55.web-hosting.com',
port: 465,
auth: {
user: 'info@needapair.com',
pass: 'ay]5P&P&qt#M'
},
tls: {
// Do not fail on invalid certs
rejectUnauthorized: false
}
});
}
else if (context == "admin") {
sendingMail = 'admin@needapair.com'
transporter = await nodemailer.createTransport({
host: 'business55.web-hosting.com',
port: 465,
auth: {
user: 'admin@needapair.com',
pass: 'zgeh^s@j@C#D'
},
tls: {
// Do not fail on invalid certs
rejectUnauthorized: false
}
});
}
// Construct the email message
const mailOptions = {
from: sendingMail,
to: to,
subject: subject,
html: html
};
var success = false
// Send the email
// console.log("transporter",transporter)
// console.log("mailOptions",mailOptions)
await transporter.sendMail(mailOptions, (error, info) => {
if (error) {
console.log('sendmail error: ', error)
reject(error);
} else {
console.log(`Email Sent to ${to}`)
resolve(info);
}
});
return success
} catch (error) {
reject(error);
}
})
}
module.exports = sendMail