From 930542049e40a1a99c9a0c2c349519ccddf52140 Mon Sep 17 00:00:00 2001 From: lowercasename Date: Thu, 25 Jul 2019 16:16:04 +0100 Subject: First commit --- models/passport.js | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100755 models/passport.js (limited to 'models/passport.js') diff --git a/models/passport.js b/models/passport.js new file mode 100755 index 0000000..15020a7 --- /dev/null +++ b/models/passport.js @@ -0,0 +1,19 @@ +const mongoose = require('mongoose'); +const passport = require('passport'); +const LocalStrategy = require('passport-local'); + +const User = mongoose.model('User'); + +passport.use(new LocalStrategy({ + usernameField: 'user[email]', + passwordField: 'user[password]', +}, (email, password, done) => { + User.findOne({ email }) + .then((user) => { + if(!user || !user.validatePassword(password)) { + return done(null, false, { errors: { 'Email or password': 'is invalid' } }); + } + + return done(null, user); + }).catch(done); +})); \ No newline at end of file -- cgit v1.2.3