Advertisement
Guest User

Untitled

a guest
Mar 22nd, 2014
255
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. passport.js
  2.  
  3. var LocalStrategy = require('passport-local').Strategy;
  4. var User = require('../app/models/user');
  5.  
  6. module.exports = function(passport) {
  7.  
  8.     passport.serializeUser(function(user, done) {
  9.         done(null, user.id);
  10.     });
  11.  
  12.     passport.deserializeUser(function(id, done) {
  13.         User.findById(id, function(err, user) {
  14.             done(err, user);
  15.         });
  16.     });
  17.  
  18.  
  19.     //LOGIN
  20.     passport.use('login', new LocalStrategy({
  21.         usernameField: 'email',
  22.         passwordField: 'password',
  23.         passReqToCallback: true
  24.     },
  25.     function(req, email, password, done) {
  26.         User.findOne({'email': email}, function(err, user) {
  27.             if(err) return done(err);
  28.             if(!user) return done(null, false, req.flash('loginMessage', 'No user found'));
  29.             if(!user.validPassword(password)) return done(null, false, req.flash('loginMessage', 'Oops! Wrong password'));
  30.             return done(null, user);
  31.  
  32.         });
  33.     }));
  34.  
  35. };
  36.  
  37. //Routes.js
  38.  
  39. module.exports = function(app, passport) {
  40.  
  41.     app.post('/login', passport.authenticate('login', {
  42.         successRedirect: '/dashboard',
  43.         failureRedirect: '/login',
  44.         failureFlash: true
  45.     }));
  46.  
  47. }
  48.  
  49. function isLoggedIn(req, res, next) {
  50.     if(req.isAuthenticated())
  51.         return next();
  52.     res.redirect('/');
  53. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement