const nodemailer = require ('nodemailer'); const emailConfig = require('../config/email'); module.exports = { transformEmailFromAlexaResponse: function (email) { //email from alexa response will contain words instead of symbols, like : //at = @ //underscore = _ //dash = - //dot = . //TODO: This list should be longer let transformedEmail = email .replace (/\s/g, '') //remove all spaces .replace (/at/gi, '@') .replace (/underscore/gi, '_') .replace (/dash/gi, '-') .replace (/dot/gi, '.'); return transformedEmail; }, isEmailValid: function (email) { console.log ('Email to validate : ' + email); let validEmailRegex = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/; return validEmailRegex.test (email); }, sendEmail: function (name, fromEmail, message, toEmail) { return new Promise ((resolve, reject) => { fromEmail = this.transformEmailFromAlexaResponse(fromEmail); let messageBody = 'Hello. User left you a message on Saburly service using Alexa skill. \r\nMessage : ' + message + '\r\nName : ' + name + '\r\nEmail : ' + fromEmail + '\r\nYour Saburly team'; let messageBodyHTML = '
Hello. User left you a message on Saburly service using Alexa skill.
' + message + '