1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- var settings = require('./config');
- var nodemailer = require('nodemailer');
- var smtpPool = require('nodemailer-smtp-pool');
- var transporter;
- var Mailer = module.exports = {
- init: function() {
- return function(done) {
- if (settings.general.mailer.service == 'Gmail') {
-
- var generator = require('xoauth2')
- .createXOAuth2Generator(settings.general.mailer.auth);
-
- var pool = smtpPool({
- service: settings.general.mailer.service,
- auth: {
- xoauth2: generator
- }
- });
-
- transporter = nodemailer.createTransport(pool);
- done();
- return;
- }
-
- var pool = smtpPool({
- service: settings.general.mailer.service,
- auth: settings.general.mailer.auth
- });
-
- transporter = nodemailer.createTransport(pool);
- done();
- };
- },
- sendMail: function(msg) {
- return function(done) {
- transporter.sendMail(msg, done);
- };
- },
- sendMailFromService: function(to, subject, html) {
- return Mailer.sendMail({
- from: settings.general.mailer.sender.name + ' <' + settings.general.mailer.sender.address + '>',
- to: to,
- subject: subject,
- html: html
- });
- }
- };
|