Merged first and second waterfall steps into one, added var secrets = require('../config/secrets');, and mongoose query now returns a user object instead of an array

This commit is contained in:
Sahat Yalkabov
2014-02-18 03:29:25 -05:00
parent 4d434aef3c
commit d24045ec49

View File

@ -14,7 +14,7 @@ exports.getReset = function(req, res) {
} }
User User
.where('resetPasswordToken', req.params.token) .findOne({ resetPasswordToken: req.params.token })
.where('resetPasswordExpires').gt(Date.now()) .where('resetPasswordExpires').gt(Date.now())
.exec(function(err, user) { .exec(function(err, user) {
if (!user) { if (!user) {
@ -46,17 +46,14 @@ exports.postReset = function(req, res, next) {
async.waterfall([ async.waterfall([
function(done) { function(done) {
User User
.where('resetPasswordToken', req.params.token) .findOne({ resetPasswordToken: req.params.token })
.where('resetPasswordExpires').gt(Date.now()) .where('resetPasswordExpires').gt(Date.now())
.exec(function(err, user) { .exec(function(err, user) {
if (!user) { if (!user) {
req.flash('errors', { msg: 'Password reset request is invalid. It may have expired.' }); req.flash('errors', { msg: 'Password reset token is invalid or has expired.' });
return res.redirect('back'); return res.redirect('back');
} }
done(err, user);
});
},
function(user, done) {
user.password = req.body.password; user.password = req.body.password;
user.resetPasswordToken = undefined; user.resetPasswordToken = undefined;
user.resetPasswordExpires = undefined; user.resetPasswordExpires = undefined;
@ -67,6 +64,7 @@ exports.postReset = function(req, res, next) {
done(err, user); done(err, user);
}); });
}); });
});
}, },
function(user, done) { function(user, done) {
var smtpTransport = nodemailer.createTransport('SMTP', { var smtpTransport = nodemailer.createTransport('SMTP', {