Advertisement
Guest User

Untitled

a guest
Feb 2nd, 2018
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. router.post('/', function(req, res, next) {
  2.  
  3.     if (!req.body.username || !req.body.password || !req.body.email) {
  4.         return res.status(401).json({
  5.             message: 'All fields are required.'
  6.         });
  7.     }
  8.  
  9.     if(req.body.username < 3) {
  10.         return res.status(401).json({
  11.             message: 'Username must be at least 3 characters long.'
  12.         });
  13.     }
  14.  
  15.     if(req.body.password < 6) {
  16.         return res.status(401).json({
  17.             message: 'Password must be at least 6 characters long.'
  18.         });
  19.     }
  20.  
  21.     if(!validator.isEmail(req.body.email)) {
  22.         return res.status(401).json({
  23.             message: 'Invalid email provided.'
  24.         });
  25.     }
  26.  
  27.     connection.query("SELECT COUNT(*) AS count FROM forum_core_members WHERE name = '" + req.body.username + "'", function(error, result) {
  28.         if(result[0].count > 0) {
  29.             return res.status(401).json({
  30.                 message: 'This username is already in use'
  31.             });
  32.         }
  33.     });
  34.  
  35.     connection.query("SELECT COUNT(*) AS count FROM forum_core_members WHERE email = '" + req.body.email + "'", function(error, result) {
  36.         if(result[0].count > 0) {
  37.             return res.status(401).json({
  38.                 message: 'This email is already in use'
  39.             });
  40.         }
  41.     });
  42.  
  43.     const salt = generateSalt();
  44.  
  45.     bcrypt.hash(req.body.password, "$2a$13$" + salt, function(err, hash) {
  46.  
  47.         connection.query("INSERT INTO forum_core_members (name, email, members_pass_hash, members_pass_salt, member_group_id, joined, ip_address, skin, members_seo_name) VALUES ('" + req.body.username + "', '" + req.body.email + "', '" + hash + "', '" + salt + "', '" + process.env.DEFAULT_MEMBER_GROUP + "', " + Math.floor((new Date()).getTime() / 1000) + ", '" + req.connection.remoteAddress + "', 0, '" + req.body.username + "')");
  48.  
  49.         request.post(
  50.             'https://community.cryptoanalysis.tech/api.php',
  51.             {
  52.                 json: {
  53.                     username: req.body.username,
  54.                     password: req.body.password
  55.                 }
  56.             },
  57.             function (error, response, body) {
  58.                 console.log(error);
  59.             }
  60.         );
  61.  
  62.         return res.status(200).json({
  63.             message: hash
  64.         });
  65.  
  66.     });
  67.  
  68. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement