Advertisement
Guest User

lol

a guest
Jun 18th, 2016
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. var LocalStrategy           = require('passport-local').Strategy;
  2. var crypto                  = require('crypto');
  3. module.exports = function(passport) {
  4.   pool.getConnection(function(err, connection)
  5.   {
  6.     passport.serializeUser(function(user, done) { done(null, user.id); });
  7.     passport.deserializeUser(function(id, done) { connection.query("SELECT * FROM users WHERE id = ? ",[id], function(err, rows) { done(err, rows[0]); }); });
  8.  
  9.     /* User Registration */
  10.     passport.use('local-signup', new LocalStrategy({ passReqToCallback : true},
  11.     function(req, username, password, done)
  12.     {
  13.       connection.query("SELECT * FROM users WHERE username = ?",[username], function(err, rows) {
  14.         if (err) return done(err);
  15.         if (rows.length) {
  16.           return done(null, false, req.flash('signupMessage', 'That username is already taken.'));
  17.         } else {
  18.           connection.query("SELECT * FROM users WHERE mail = ?", [req.body.mail], function(err, rows) {
  19.             if (err) return done(err);
  20.             if (rows.length) {
  21.               return done(null, false, req.flash('signupMessage', 'That email address is in use, identity theif!'));
  22.             } else {
  23.             var data = {
  24.               username : username,
  25.               password :crypto.createHash('md5').update(password).digest("hex"),
  26.             };
  27.             connection.query("INSERT INTO users (username, password, look, mail, auth_ticket) values (?, ?, 'hd-3095-8.ca-3292-110.lg-280-110.ch-210-100.hr-831-37.ha-3488-1408.cp-3309-92.sh-290-92', ?, '0')", [data.username, data.password, req.body.mail], function(err, rows) {
  28.               if (err) throw err;
  29.               data.id = rows.insertId;
  30.  
  31.               connection.query("INSERT INTO rp_stats (id) values (?)", [data.id], function(err, rows) {
  32.               });
  33.               return done(null, data);
  34.             });
  35.           }
  36.         });
  37.       }
  38.     });
  39. }));
  40.  
  41.  
  42.  
  43.   /* The login */
  44.       passport.use(
  45.           'local-login',
  46.           new LocalStrategy({
  47.               usernameField : 'username',
  48.               passwordField : 'password',
  49.               passReqToCallback : true
  50.           },
  51.           function(req, username, password, done) {
  52.               connection.query("SELECT * FROM users WHERE username = ?",[username], function(err, rows){
  53.                   if (err)
  54.                       return done(err);
  55.                   if (!rows.length) {
  56.                       return done(null, false, req.flash('loginMessage', 'No user found.'));
  57.                   }
  58.                   request = crypto.createHash('md5').update(password).digest("hex");
  59.                   result  = rows[0].password;
  60.                   if (request != result) {
  61.                     return done(null, false, req.flash('loginMessage', 'Oops! Wrong password.'));
  62.                   }
  63.                   return done(null, rows[0]);
  64.               });
  65.           })
  66.       );
  67.       connection.release();
  68.     });
  69. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement