25 lines
635 B
JavaScript
25 lines
635 B
JavaScript
const passport = require('passport');
|
|
const LocalStrategy = require('passport-local').Strategy;
|
|
|
|
const User = require('../../models/user');
|
|
|
|
module.exports = function(passport) {
|
|
passport.use(new LocalStrategy(
|
|
{
|
|
usernameField: 'username',
|
|
passwordField: 'password',
|
|
},
|
|
(username, password, done) => {
|
|
User.findOne({ email: username }, (err, user) => {
|
|
if (err) { return done(err); }
|
|
|
|
if (!user || !user.validatePassword(password)) {
|
|
return done(null, false, { message: 'Incorrect username or password.' });
|
|
}
|
|
|
|
return done(null, user);
|
|
});
|
|
}
|
|
));
|
|
};
|