From f7fa0ae86644f745b6c0be68f9314dbcf6e2bc02 Mon Sep 17 00:00:00 2001 From: Riley Davis Date: Wed, 7 Dec 2016 15:01:07 -1000 Subject: [PATCH] make PORT and HOST optional --- services/mailer.js | 27 +++++++++++++++++---------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/services/mailer.js b/services/mailer.js index c21e0137a..ed636314b 100644 --- a/services/mailer.js +++ b/services/mailer.js @@ -1,27 +1,34 @@ const nodemailer = require('nodemailer'); -const smtpProps = [ +const smtpRequiredProps = [ 'TALK_SMTP_USERNAME', - 'TALK_SMTP_PASSWORD', - 'TALK_SMTP_HOST', - 'TALK_SMTP_PORT' + 'TALK_SMTP_PASSWORD' ]; -smtpProps.forEach(prop => { +smtpRequiredProps.forEach(prop => { if (!process.env[prop]) { console.error(`process.env.${prop} should be defined if you would like to send password reset emails from Talk`); } }); -const defaultTransporter = nodemailer.createTransport({ - // https://github.com/nodemailer/nodemailer-wellknown#supported-services - host: process.env.TALK_SMTP_HOST, - port: process.env.TALK_SMTP_PORT, +// https://github.com/nodemailer/nodemailer-wellknown#supported-services +const options = { + service: 'SendGrid', auth: { user: process.env.TALK_SMTP_USERNAME, pass: process.env.TALK_SMTP_PASSWORD } -}); +}; + +if (process.env.TALK_SMTP_PORT) { + options.port = process.env.TALK_SMTP_PORT; +} + +if (process.env.TALK_SMTP_HOST) { + options.host = process.env.TALK_SMTP_HOST; +} + +const defaultTransporter = nodemailer.createTransport(options); const mailer = {