From c3b9a32f57411b78cef80a6acf267041dae109fe Mon Sep 17 00:00:00 2001 From: Gustavo Soviersovski <gustavo.as1997@hotmail.com> Date: Wed, 30 Aug 2017 09:48:19 -0300 Subject: [PATCH] Add Sending Mail Functionality --- package.json | 1 + src/libs/middlewares/email.js | 22 ++++++++++++++++++++++ src/libs/routes/message.js | 9 +++++++++ 3 files changed, 32 insertions(+) create mode 100644 src/libs/middlewares/email.js diff --git a/package.json b/package.json index 298d38e..7a3f3a6 100644 --- a/package.json +++ b/package.json @@ -34,6 +34,7 @@ "monetdb-pool": "0.0.8", "mongoose": "^4.6.0", "nconf": "^0.8.x", + "nodemailer": "^4.1.0", "passport": "^0.3.2", "winston": "^2.2.0" }, diff --git a/src/libs/middlewares/email.js b/src/libs/middlewares/email.js new file mode 100644 index 0000000..c8fbfbe --- /dev/null +++ b/src/libs/middlewares/email.js @@ -0,0 +1,22 @@ +const nodemailer = require('nodemailer'); + +let transporter = nodemailer.createTransport({ + "port": 25, + "host": "mx.c3sl.ufpr.br", + "secure": false, + "ignoreTLS": true +}); + +let mailOptions = { + "from": "\"Laboratório de Dados Educacionais\" <lde@c3sl.ufpr.br>", + "to": "<dadoseducacionais@ufpr.br>" +}; + +module.exports = function send(content, callback) { + mailOptions.content = content; + transporter.sendMail(mailOptions, (err, info) => { + if (err) + return callback(err); + callback(null, info); + }); +} diff --git a/src/libs/routes/message.js b/src/libs/routes/message.js index 308cecb..db2058c 100644 --- a/src/libs/routes/message.js +++ b/src/libs/routes/message.js @@ -10,6 +10,8 @@ const log = require(`${libs}/log`)(module); const Message = require(`${libs}/models/message`); +const Email = require(`${libs}/middlewares/email`); + messageApp.get('/', (req, res, next) => { Message.find((err, messages) => { if(err) { @@ -56,6 +58,13 @@ messageApp.post('/', (req, res, next) => { }, contents: req.body.contents }); + text = message.author.name + " <" + message.author.email + + "> enviou a seguinte mensagem via página de contato do LDE: \"" + + message.contents + "\""; + Email(text, (err)=> { + if (err) + log.error(err); + }); message.save((err) => { if(err) { -- GitLab