#45 Using ES6 promises now
parent
67061fd99c
commit
d74f0f2087
|
@ -105,9 +105,10 @@ router.route('/password/:token')
|
|||
User
|
||||
.findOne({'auth.passToken': req.params.token})
|
||||
.where('auth.tokenExpires').gt(Date.now())
|
||||
//TODO: Add own promise libary
|
||||
.exec((err, user) => {
|
||||
if (err) { mw.throwErr(err,req); }
|
||||
.catch((err)=>{
|
||||
mw.throwErr(err,req);
|
||||
})
|
||||
.then((user) => {
|
||||
if (!user) {
|
||||
req.flash('danger', 'Password reset token is invalid or has expired. ');
|
||||
res.redirect( (req.isAuthenticated)?'/settings':'/login' );
|
||||
|
@ -124,18 +125,18 @@ router.route('/password/:token')
|
|||
} )
|
||||
|
||||
.post( (req,res,next)=>{
|
||||
|
||||
|
||||
//TODO: Validate password
|
||||
|
||||
|
||||
// Delete token
|
||||
res.locals.passwordUser.auth.passToken = undefined;
|
||||
res.locals.passwordUser.auth.tokenExpires = undefined;
|
||||
|
||||
|
||||
// Create hash
|
||||
res.locals.passwordUser.generateHash( req.body.password, (err,hash)=>{
|
||||
if (err){ mw.throwErr(err,req); }
|
||||
else {
|
||||
|
||||
|
||||
// Save new password to db
|
||||
res.locals.passwordUser.auth.password = hash;
|
||||
res.locals.passwordUser.save( (err)=>{
|
||||
|
@ -148,10 +149,10 @@ router.route('/password/:token')
|
|||
res.redirect('/login#login');
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
} );
|
||||
|
||||
|
||||
} );
|
||||
|
||||
|
||||
|
|
28
server.js
28
server.js
|
@ -21,16 +21,24 @@ const
|
|||
|
||||
/* SETUP */ {
|
||||
|
||||
/* Database */ mongoose.connect(env.mongoSetup, {
|
||||
server:{socketOptions:{
|
||||
keepAlive:1, connectTimeoutMS:30000 }},
|
||||
replset:{socketOptions:{
|
||||
keepAlive:1, connectTimeoutMS:30000 }}
|
||||
}).catch((err)=>{
|
||||
mw.throwErr(err);
|
||||
}).then(()=>{
|
||||
console.log(`💿 Mongoose connected to database`);
|
||||
});
|
||||
/* Database */ {
|
||||
|
||||
// Setup with native ES6 promises
|
||||
mongoose.Promise = global.Promise;
|
||||
|
||||
// Connect to database
|
||||
mongoose.connect(env.mongoSetup, {
|
||||
server:{socketOptions:{
|
||||
keepAlive:1, connectTimeoutMS:30000 }},
|
||||
replset:{socketOptions:{
|
||||
keepAlive:1, connectTimeoutMS:30000 }}
|
||||
}).catch((err)=>{
|
||||
mw.throwErr(err);
|
||||
}).then(()=>{
|
||||
console.log(`💿 Mongoose connected to database`);
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
/* Templates */ {
|
||||
nunjucks.configure(__dirname+'/views', {
|
||||
|
|
Loading…
Reference in New Issue