1 | var passport = require('passport'),
|
2 | LocalStrategy = require('passport-local').Strategy,
|
3 | mongoose = require('mongoose'),
|
4 | User = mongoose.model('User')
|
5 |
|
6 | passport.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 |
|
14 | if (!user) {
|
15 | return done(null, false, {
|
16 | message: 'User not found'
|
17 | })
|
18 | }
|
19 |
|
20 | if (!user.validPassword(password)) {
|
21 | return done(null, false, {
|
22 | message: 'Password is wrong'
|
23 | })
|
24 | }
|
25 |
|
26 | return done(null, user)
|
27 | })
|
28 | }
|
29 | catch(e) {
|
30 | console.log('error', e.message)
|
31 | }
|
32 | }
|
33 | ))
|