Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- passport.js
- var LocalStrategy = require('passport-local').Strategy;
- var User = require('../app/models/user');
- module.exports = function(passport) {
- passport.serializeUser(function(user, done) {
- done(null, user.id);
- });
- passport.deserializeUser(function(id, done) {
- User.findById(id, function(err, user) {
- done(err, user);
- });
- });
- //LOGIN
- passport.use('login', new LocalStrategy({
- usernameField: 'email',
- passwordField: 'password',
- passReqToCallback: true
- },
- function(req, email, password, done) {
- User.findOne({'email': email}, function(err, user) {
- if(err) return done(err);
- if(!user) return done(null, false, req.flash('loginMessage', 'No user found'));
- if(!user.validPassword(password)) return done(null, false, req.flash('loginMessage', 'Oops! Wrong password'));
- return done(null, user);
- });
- }));
- };
- //Routes.js
- module.exports = function(app, passport) {
- app.post('/login', passport.authenticate('login', {
- successRedirect: '/dashboard',
- failureRedirect: '/login',
- failureFlash: true
- }));
- }
- function isLoggedIn(req, res, next) {
- if(req.isAuthenticated())
- return next();
- res.redirect('/');
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement