diff --git a/package.json b/package.json index 298d38e34e75d807d279b78b176494ce2bd11fa6..7a3f3a610f405c7490293a1692fd03caf6fa240a 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 0000000000000000000000000000000000000000..c8fbfbed9c56aba90ff8b37be78210412a9f720f --- /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 308cecb94d8348a1450785c48a802f8452d38a93..db2058c14fe41ff856e4965f714bd013a440777a 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) {