const fs = require('fs');
const pug = require('pug');
-const nodemailer = require('nodemailer');
+const sendgrid = require('@sendgrid/mail');
+
const texttemplate = fs.readFileSync(__dirname + '/template.txt', 'utf-8');
/**
return texttemplate.replace(/<token>/, token);
};
-/**
- * Create a reusable transport method.
- */
-
-const transport = nodemailer.createTransport({
- service: 'SendGrid',
- auth: {
- user: process.env.SENDGRID_USER,
- pass: process.env.SENDGRID_PASS
- }
-});
+sendgrid.setApiKey(process.env.SENDGRID_API_KEY);
/**
* Send the reset password email.
*/
exports.sendEmail = function(to, token, callback) {
- transport.sendMail(
+ sendgrid.send(
{
from: 'binb <no-reply@binb.co>',
to: to,
html: HTMLMessage({ token: token }),
text: plaintextMessage(token)
},
- function(err, info) {
- if (err) {
- return callback(err);
- }
-
- callback(null, info);
- }
+ callback
);
};
"node": ">=8.3.0"
},
"dependencies": {
+ "@sendgrid/mail": "^7.3.0",
"async": "^3.1.1",
"body-parser": "^1.18.3",
"canvas": "^2.4.1",
"express": "^4.16.4",
"express-session": "^1.16.1",
"forwarded-for": "^1.0.1",
- "nodemailer": "^6.1.0",
"primus": "^7.3.2",
"primus-emitter": "^3.1.1",
"primus-rooms": "^3.4.1",