emailer invocation for new users

v1.18.x
Julian Lam 11 years ago
parent e4e57ce31f
commit dd72e73284

@ -1,5 +1,6 @@
var User = require('./user'), var User = require('./user'),
Plugins = require('./plugins'), Plugins = require('./plugins'),
Meta = require('./meta'),
Handlebars = require('handlebars'), Handlebars = require('handlebars'),
fs = require('fs'), fs = require('fs'),
@ -57,7 +58,9 @@ Emailer.send = function(template, uid, params) {
User.getUserField(uid, 'email', function(err, email) { User.getUserField(uid, 'email', function(err, email) {
if (!err) { if (!err) {
Plugins.fireHook('action:email.send', { Plugins.fireHook('action:email.send', {
email: email, to: email,
from: Meta.config['email:from'],
subject: subject,
html: results.html, html: results.html,
plaintext: results.plaintext plaintext: results.plaintext
}); });

@ -1,6 +1,5 @@
var bcrypt = require('bcrypt'), var bcrypt = require('bcrypt'),
async = require('async'), async = require('async'),
emailjs = require('emailjs'),
nconf = require('nconf'), nconf = require('nconf'),
winston = require('winston'), winston = require('winston'),
gravatar = require('gravatar'), gravatar = require('gravatar'),
@ -12,7 +11,6 @@ var bcrypt = require('bcrypt'),
plugins = require('./plugins'), plugins = require('./plugins'),
db = require('./database'), db = require('./database'),
meta = require('./meta'), meta = require('./meta'),
emailjsServer = emailjs.server.connect(meta.config['email:smtp:host'] || '127.0.0.1'),
groups = require('./groups'), groups = require('./groups'),
notifications = require('./notifications'), notifications = require('./notifications'),
topics = require('./topics'), topics = require('./topics'),
@ -826,15 +824,14 @@ var bcrypt = require('bcrypt'),
}; };
User.sendConfirmationEmail = function(email) { User.sendConfirmationEmail = function(email) {
if (meta.config['email:smtp:host'] && meta.config['email:smtp:port'] && meta.config['email:from']) {
var confirm_code = utils.generateUUID(), var confirm_code = utils.generateUUID(),
confirm_link = nconf.get('url') + 'confirm/' + confirm_code, confirm_link = nconf.get('url') + 'confirm/' + confirm_code/*,
confirm_email = global.templates['emails/header'] + global.templates['emails/email_confirm'].parse({ confirm_email = global.templates['emails/header'] + global.templates['emails/email_confirm'].parse({
'CONFIRM_LINK': confirm_link 'CONFIRM_LINK': confirm_link
}) + global.templates['emails/footer'], }) + global.templates['emails/footer'],
confirm_email_plaintext = global.templates['emails/email_confirm_plaintext'].parse({ confirm_email_plaintext = global.templates['emails/email_confirm_plaintext'].parse({
'CONFIRM_LINK': confirm_link 'CONFIRM_LINK': confirm_link
}); })*/;
// Email confirmation code // Email confirmation code
var expiry_time = Date.now() / 1000 + 60 * 60 * 2; var expiry_time = Date.now() / 1000 + 60 * 60 * 2;
@ -845,23 +842,30 @@ var bcrypt = require('bcrypt'),
db.setObjectField('confirm:email', confirm_code + ':expire', expiry_time); db.setObjectField('confirm:email', confirm_code + ':expire', expiry_time);
// Send intro email w/ confirm code // Send intro email w/ confirm code
var message = emailjs.message.create({ User.getUserField(uid, 'username', function(err, username) {
text: confirm_email_plaintext, Emailer.send('welcome', uid, {
from: meta.config['email:from'] || 'localhost@example.org', 'site_title': (meta.config['title'] || 'NodeBB'),
to: email, subject: 'Welcome to ' + (meta.config['title'] || 'NodeBB') + '!',
subject: '[NodeBB] Registration Email Verification', username: username,
attachment: [{ 'confirm_link': confirm_link
data: confirm_email, });
alternative: true });
}] // var message = emailjs.message.create({
}); // text: confirm_email_plaintext,
// from: meta.config['email:from'] || 'localhost@example.org',
emailjsServer.send(message, function(err, success) { // to: email,
if (err) { // subject: '[NodeBB] Registration Email Verification',
console.log(err); // attachment: [{
} // data: confirm_email,
}); // alternative: true
} // }]
// });
// emailjsServer.send(message, function(err, success) {
// if (err) {
// console.log(err);
// }
// });
}; };
User.pushNotifCount = function(uid) { User.pushNotifCount = function(uid) {

Loading…
Cancel
Save