Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const nodemailer = require('nodemailer');
- const EmailTemplate = require('email-templates').EmailTemplate;
- const Promise = require('bluebird');
- const path = require('path');
- const transporter = nodemailer.createTransport({
- service: 'gmail',
- auth: {
- user: 'meuemail@gmail.com',
- pass: 'minhasenha'
- }
- });
- function sendEmail(obj) {
- return transporter.sendMail(obj);
- }
- let users = [{
- name: '',
- email: '',
- code: ''
- }];
- async function loadTemplate(templateName, contexts) {
- try{
- let template = new EmailTemplate(path.join(__dirname, '../../templates/account', templateName));
- return Promise.all(contexts.map((context) => {
- return new Promise((resolve, reject) => {
- template.render(context, (err, result) => {
- if(err) reject(err);
- else resolve({
- email: result,
- context,
- });
- })
- })
- }));
- } catch( err ) {
- }
- }
- loadTemplate('new', users).then((results) => {
- return Promise.all(results.map((result) => {
- sendEmail({
- to: result.context.email,
- from: 'DoctorGym',
- subject: result.email.subject,
- html: result.email.html,
- text: result.email.html
- })
- }));
- }).then(() => {
- console.log('Foi!!!!!!!');
- })
- module.exports = loadTemplate;
Add Comment
Please, Sign In to add comment