UNPKG

939 BJavaScriptView Raw
1var passport = require('passport'),
2 LocalStrategy = require('passport-local').Strategy,
3 mongoose = require('mongoose'),
4 User = mongoose.model('User')
5
6passport.use(new LocalStrategy({
7 usernameField: 'email'
8 },
9 function(username, password, done) {
10 try {
11 User.findOne({ email: username }, function (err, user) {
12 if (err) { return done(err); }
13 // Return if user not found in database
14 if (!user) {
15 return done(null, false, {
16 message: 'User not found'
17 })
18 }
19 // Return if password is wrong
20 if (!user.validPassword(password)) {
21 return done(null, false, {
22 message: 'Password is wrong'
23 })
24 }
25 // If credentials are correct, return the user object
26 return done(null, user)
27 })
28 }
29 catch(e) {
30 console.log('error', e.message)
31 }
32 }
33))