Guest User

Untitled

a guest
Mar 28th, 2017
32
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. var client = require("socket.io").listen(8001).sockets;
  2. var mysql = require("mysql");
  3. var colors = require("colors");
  4. var crypto = require("crypto");
  5.  
  6. var config = {
  7.     host: "localhost",
  8.     user: "root",
  9.     password: "",
  10.     database: "melonpw"
  11. };
  12.  
  13. var users;
  14.  
  15. var num = 0;
  16. var con;
  17.  
  18. function log(text, color) {
  19.     var d = new Date();
  20.     var h = d.getHours();
  21.     var m = d.getMinutes();
  22.     var ap = "AM";
  23.     if (h > 12) {
  24.         h -= 12;
  25.         var ap = "PM";
  26.     }
  27.     if (m < 10) {
  28.         m = "0" + m;
  29.     }
  30.     time = h + ":" + m + " " + ap;
  31.  
  32.     if (typeof(color) == "undefined") {
  33.         display = colors.grey(time) + ": " + text;
  34.         console.log(display);
  35.     } else {
  36.         console.log(colors.grey(time) + ": " + colors[color](text));
  37.     }
  38. }
  39.  
  40. function handleConnection() {
  41.     con = mysql.createConnection(config);
  42.  
  43.     con.connect(function(err) {
  44.         if (err) {
  45.             log("An error has occurred while connection: " + err, "red");
  46.             setTimeout(handleConnection, 2000);
  47.         } else {
  48.             log("Connection successful.", "green");
  49.  
  50.             con.query("SELECT username FROM users", function(err, res) {
  51.                 if (err) throw err;
  52.  
  53.                 for (var i = 0; i < res.length; i++) {
  54.                     users[res[i].username] = {};
  55.                 }
  56.                 log("Set known users.", "green");
  57.             });
  58.         }
  59.     });
  60.  
  61.     con.on("error", function(err) {
  62.         console.log("Error: " + err);
  63.         if (err.code === "PROTOCOL_CONNECTION_LOST") {
  64.             handleConnection();
  65.         } else {
  66.             throw err;
  67.         }
  68.     });
  69. }
  70.  
  71. handleConnection();
  72. client.on("connection", function(socket) {
  73.     socket.on("register", function(data) {
  74.  
  75.         for (var key in users) {
  76.             if (key.toLowerCase() == data.username.toLowerCase()) {
  77.                 socket.emit("register", { error: "userExists" });
  78.                 return;
  79.             }
  80.         }
  81.  
  82.     if (data.username.length >= 5) {
  83.       if (data.password.length >= 6) {
  84.         if (data.password == data.confirm) {
  85.                     encryptedPassword = crypto.createHash('md5').update(data.password).digest('hex');
  86.                     insert = { username: data.username, password: encryptedPassword };
  87.                     con.query("INSERT INTO users SET ?", insert, function(err, res) {
  88.                         if (err) throw err;
  89.                         socket.emit("register", true);
  90.                         console.log("INSERT success!");
  91.                         console.log("Username: " + data.username);
  92.                         console.log("Password: " + data.password);
  93.                     });
  94.                 } else {
  95.                     log("Password doesn't match.", "red");
  96.                 }
  97.             } else {
  98.                 log("Password too short.", "red");
  99.             }
  100.         } else {
  101.             log("Username too short.", "red");
  102.         }
  103.     });
  104.  
  105.     socket.on("login", function(data) {
  106.         con.query("SELECT username, password FROM users WHERE username = '" + data.username + "'", function(err, res) {
  107.             if (err) throw err;
  108.  
  109.             if (res.length > 0) {
  110.                 encryptedPassword = crypto.createHash('md5').update(data.password).digest('hex');
  111.                 if (encryptedPassword == res[0].password) {
  112.  
  113.                 } else {
  114.                     socket.emit("login", { error: "incorrectPassword" });
  115.                 }
  116.             } else {
  117.                 socket.emit("login", { error: "incorrectUsername" });
  118.             }
  119.         });
  120.     });
  121.  
  122.   socket.on("add", function(data) {
  123.      con.query("SELECT * FROM testing", function(err, res) {
  124.         if (err) throw err;
  125.         console.log("Returned amount: " + res[0].amount);
  126.         if (num == 0) num = 1;
  127.         num = parseInt(res[0].amount) + 1;
  128.         console.log("Number value = " + num);
  129.      });
  130.  
  131.      con.query("UPDATE testing SET amount = ? WHERE id = ?", [num, 1], function (err, res) {
  132.          if (err) throw err;
  133.  
  134.          console.log(res);
  135.  
  136.      });
  137.  
  138.  
  139.   });
  140. });
Add Comment
Please, Sign In to add comment