var LocalStrategy = require('passport-local').Strategy;
// load up the user model
var User = require('../app/models/user');
// save the user
newUser.save(function(err) {
if (err)
throw err;
return done(null, newUser);
});
Asked
Active
Viewed 51 times
-1

Reza Saadati
- 5,018
- 4
- 27
- 64

Mohd Saif Ansari
- 1
- 2
1 Answers
0
passport.use('local-update', new LocalStrategy({
usernameField : 'email',
passwordField : 'password',
passReqToCallback : true //allowsustopassbacktheentirerequest to the
},
function(req, email, password, done) { // callback with email and password
console.log("local-update")
// find a user whose email is the same as the forms email
console.log(req.user._id)
//console.log(email)
// find a user whose email is the same as the forms email
// we are checking to see if the user trying to login already exists
// if there is no user with that email
// create the user
var newUser = new User();
// set the user's local credentials
newUser.local.username = req.user.local.username;
newUser.local.email = email;
newUser.local.password = newUser.generateHash(password);
console.log(password)
console.log(newUser)
//console.log(newUser)
// update the user
newUser._id=req.user._id;
// if the user is found but the password is wrong
User.findOne({ _id: req.user._id},
function(err, user)
{
// if there are any errors, return the error before anything else
if (err){
return done(err);
}
else {
// all is well, return successful user
console.log(password);
}
User.update( {_id: req.user._id}, newUser, {upsert: true}, function(err,user, numberAffected, rawResponse) {
if (err){
console.log('new profile update error');
return done(err);
}
// all is well, return successful user
else
{
// if (User.setUser(newUser.local.password))
console.log('new profile update');
console.log(user);
return done(null, newUser,req.flash('passMessage', 'Password Changed Successfully.'));
}});
});
}));

Mohd Saif Ansari
- 1
- 2