Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import path from 'path';
- import config from '../../config/config';
- const nodemailer = require('nodemailer');
- const EmailTemplate = require('email-templates');
- const transporter = nodemailer.createTransport({
- service: 'gmail',
- port: 587,
- secure: false, // true for 465, false for other ports
- auth: {
- user: config.mail.user,
- pass: config.mail.pass
- }
- });
- const emailEngine = new EmailTemplate({
- message: {
- from: 'duardbr@gmail.com'
- },
- transport: transporter,
- preview: true,
- send: true,
- juice: true,
- juiceResources: {
- preserveImportant: true,
- webResources: {
- relativeTo: path.resolve('public')
- }
- }
- });
- function sendConfirmationRegisterLink(req, res) {
- const mailto = req.body.mailto;
- console.log(`PARA QUEM VAMOS ENVIAR ${mailto}`);
- const mensagem = {
- template: '../server/emails/templates/confirmation',
- message: {
- to: mailto
- },
- locals: {
- name: `${req.body.firstName} ${req.body.lastName}`
- }
- };
- emailEngine.send(mensagem, function (err) {
- if (err) { return res.status(500).send({ msg: err.message }); }
- res.status(200).send(`A verification email has been sent to ${mailto}.`);
- });
- return res.json(req.body);
- }
- function sendRegisterConfirmarionLink(req, res) {
- console.log(JSON.stringify(req.body));
- const receipt = req.body.receipt;
- console.log(`PARA QUEM VAMOS ENVIAR ${receipt}`);
- const mensagem = {
- template: '../server/emails/templates/confirmation',
- message: {
- to: receipt
- },
- locals: {
- name: `${req.body.firstName} ${req.body.lastName}`
- }
- };
- const horario = new Date();
- // setup email data with unicode symbols
- const mailOptions = {
- from: '"SimplesEmpresa 👻" <duardbr@gmail.com>', // sender address
- to: receipt,
- subject: `Hello ✔ ${horario}`, // Subject line
- text: 'Hello world?', // plain text body
- html: '<b>Hello world?</b>' // html body
- };
- emailEngine.send(mensagem).then(console.log).catch(console.error);
- transporter.sendMail(mailOptions).then(console.log).catch(console.error);
- // emailEngine.render(mensagem, function (error, result) {
- // if (error) {
- // return res.send(error);
- // }
- // res.send(result);
- // });
- return res.json(req.body);
- }
- function sendOne(emailTemplate, subject, obj) {
- emailEngine('../server/emails/templates/confirmation', function (err, template) {
- if (err) {
- console.log(err)
- } else {
- template(emailTemplate, obj.toObject(), function (err, html, text) {
- if (err) {
- console.log(err)
- } else {
- const emailFrom = '<support@xxxxx.xx>'
- const mailOptions = {
- from: emailFrom,
- to: obj.email,
- subject: subject,
- text: text,
- html: html
- }
- transporter.sendMail(mailOptions, function (err, responseStatus) {
- if (err) {
- console.log(err)
- } else {
- console.log(`Message sent: ${responseStatus.response}`);
- }
- })
- }
- });
- }
- })
- }
- export default { sendConfirmationRegisterLink, sendRegisterConfirmarionLink, sendOne };
Add Comment
Please, Sign In to add comment