This commit is contained in:
barisusakli
2014-06-23 19:45:45 -04:00
parent 3e73e17502
commit 1296cd58b9
6 changed files with 52 additions and 43 deletions

View File

@@ -5,12 +5,13 @@ var async = require('async'),
nconf = require('nconf'),
winston = require('winston'),
user = require('./../user'),
utils = require('./../../public/src/utils'),
plugins = require('./../plugins'),
db = require('./../database'),
meta = require('./../meta'),
emailer = require('./../emailer');
user = require('../user'),
utils = require('../../public/src/utils'),
translator = require('../../public/src/translator'),
plugins = require('../plugins'),
db = require('../database'),
meta = require('../meta'),
emailer = require('../emailer');
(function(UserEmail) {
@@ -42,27 +43,30 @@ var async = require('async'),
db.expireAt('confirm:' + confirm_code, Math.floor(Date.now() / 1000 + 60 * 60 * 2), next);
}
], function(err) {
user.getUserField(uid, 'username', function(err, username) {
if (err) {
return winston.error(err.message);
}
var data = {
site_title: (meta.config.title || 'NodeBB'),
username: username,
confirm_link: confirm_link,
confirm_code: confirm_code,
translator.translate('[[email:welcome-to, ' + (meta.config.title || 'NodeBB') + ']]', meta.config.defaultLang, function(subject) {
var data = {
site_title: (meta.config.title || 'NodeBB'),
username: username,
confirm_link: confirm_link,
confirm_code: confirm_code,
subject: 'Welcome to ' + (meta.config.title || 'NodeBB') + '!',
template: 'welcome',
uid: uid
};
subject: subject,
template: 'welcome',
uid: uid
};
if (plugins.hasListeners('action:user.verify')) {
plugins.fireHook('action:user.verify', uid, data);
} else if (plugins.hasListeners('action:email.send')) {
emailer.send('welcome', uid, data);
}
if (plugins.hasListeners('action:user.verify')) {
plugins.fireHook('action:user.verify', uid, data);
} else if (plugins.hasListeners('action:email.send')) {
emailer.send('welcome', uid, data);
}
});
});
});
});

View File

@@ -4,13 +4,15 @@
var async = require('async'),
nconf = require('nconf'),
user = require('./../user'),
utils = require('./../../public/src/utils'),
user = require('../user'),
utils = require('../../public/src/utils'),
translator = require('../../public/src/translator'),
db = require('./../database'),
meta = require('./../meta'),
events = require('./../events'),
emailer = require('./../emailer');
db = require('../database'),
meta = require('../meta'),
events = require('../events'),
emailer = require('../emailer'),
tran;
(function(UserReset) {
@@ -39,27 +41,26 @@ var async = require('async'),
UserReset.send = function(socket, email, callback) {
user.getUidByEmail(email, function(err, uid) {
if(err || !uid) {
if (err || !uid) {
return callback(err || new Error('[[error:invalid-email]]'));
}
// Generate a new reset code
var reset_code = utils.generateUUID();
db.setObjectField('reset:uid', reset_code, uid);
db.setObjectField('reset:expiry', reset_code, (60 * 60) + Math.floor(Date.now() / 1000));
var reset_link = nconf.get('url') + '/reset/' + reset_code;
emailer.send('reset', uid, {
site_title: (meta.config.title || 'NodeBB'),
reset_link: reset_link,
subject: 'Password Reset Requested - ' + (meta.config.title || 'NodeBB') + '!',
template: 'reset',
uid: uid
translator.translate('[[email:password-reset-requested, ' + (meta.config.title || 'NodeBB') + ']]', meta.config.defaultLang, function(subject) {
emailer.send('reset', uid, {
site_title: (meta.config.title || 'NodeBB'),
reset_link: reset_link,
subject: subject,
template: 'reset',
uid: uid
});
callback();
});
callback();
});
};