daily pastebin goal
49%
SHARE
TWEET

Untitled

a guest Sep 24th, 2016 58 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. var LocalStrategy = require('passport-local').Strategy;
  2. var User = require('../models/user');
  3.  
  4. module.exports = function(passport){
  5.     /* SERIALIZING & DESERIALIZING USERS */
  6.     passport.serializeUser(function(user, done){
  7.         done(null, user.id);
  8.     });
  9.  
  10.     passport.deserializeUser(function(id, done){
  11.         User.findById(id, function(err, user) {
  12.             done(err, user);
  13.         });
  14.     });
  15.  
  16.     /* PASSPORT LOCAL AUTHENTICATION  */
  17.     passport.use('local-login', new LocalStrategy({
  18.         usernameField: 'email',
  19.         passwordField: 'password',
  20.         passReqToCallback: true,
  21.     },
  22.     function(req, username, password, done){
  23.         console.log(username, password);
  24.         User.findOne({ 'local.email' : email }, function(err, user) {
  25.             if (err){
  26.                 return done(err);
  27.             }
  28.             if (!user) {
  29.                 console.log('no user found');
  30.                 return done(null, false);
  31.             }
  32.             if (!user.validPassword(password)){
  33.                 console.log('Oops! Wrong password.');
  34.                 return done(null, false);
  35.             }
  36.             return done(null, user);
  37.         })
  38.     }));
  39.  
  40.     passport.use('local-signup', new LocalStrategy({
  41.         usernameField : 'email',
  42.         passwordField : 'password',
  43.         passReqToCallback : true
  44.     },
  45.     function(req, email, password, done){
  46.         process.nextTick(function() {
  47.             /* Try and see if it can find that user at all */
  48.             // User.findOne({ 'local.email' : email }, function(err, user) {       
  49.             //  console.log('hi');
  50.             //  console.log(user);
  51.             //  if(err){
  52.             //      console.log('error');
  53.             //      return done(err);
  54.             //  }
  55.             //  if (user){
  56.             //      console.log("already exists");
  57.             //      return done(null, false, req.flash('signupMessage', 'E-Mail already exists!'));
  58.             //  }
  59.             //  else {
  60.                     console.log("------------------");
  61.                     var newUser = new User();
  62.                     newUser.local.firstname = req.body.firstname;
  63.                     newUser.local.lastname = req.body.lastname;
  64.                     newUser.local.email = email;
  65.                     newUser.local.password = newUser.generateHash(password);
  66.                     console.log(newUser);
  67.  
  68.                     /* Insert them into the database */
  69.                     newUser.save(function(err){
  70.                         if(err){
  71.                             throw err;
  72.                         }
  73.                         return done (null, newUser);
  74.                     });
  75.             //  }
  76.             // }); 
  77.         });
  78.     }));
  79.  
  80.  
  81. };
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top