Advertisement
banana111

server-side script of my real time chat

Dec 9th, 2020
410
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. const io = require("socket.io")(3000, { cors: { origin: "*", }, });
  2. var fs = require('fs');
  3.  
  4. io.on("connection", socket => {
  5.     console.log("new User")
  6.     socket.emit("sent_message", "Hello World");
  7.    
  8.     socket.on("send_message", message => {
  9.         socket.broadcast.emit("sent_message", message);
  10.     });
  11.  
  12.     socket.on("username", data => {
  13.         console.log("username");
  14.         // data = JSON.stringify(users_data);
  15.         // fs.writeFile('users.json', data, function (err) {
  16.         //     if (err) throw err;
  17.         //     console.log('Saved!');
  18.         // });
  19.         saved_data = fs.readFileSync('users.json', 'utf8' , (err) => {
  20.             if (err) {
  21.               console.error(err)
  22.               return
  23.             }
  24.         });
  25.         users = JSON.parse(saved_data);
  26.         exists=false;
  27.         saved_index=0;
  28.         for(let i =0; i < users.length;i++){
  29.             if(users[i].username==data){
  30.                 exists=true;
  31.                 saved_index = i;
  32.             }
  33.         }
  34.         if(exists==false){
  35.             users.push({username:data, password:""});
  36.             save_data = JSON.stringify(users);
  37.             fs.writeFile('users.json', save_data, function (err) {
  38.                     if (err) throw err;
  39.                     console.log('Saved!');
  40.             });
  41.             console.log("sending pass");
  42.             socket.emit("create_password");
  43.         }else{
  44.             if(users[saved_index].password==""){
  45.                 socket.emit("create_password");
  46.                 console.log("create_password");
  47.             }else{
  48.                 socket.emit("login_password");
  49.                 console.log("login_password");
  50.                 console.log(":"+users[saved_index].username);
  51.                 console.log(":"+users[saved_index].password);
  52.                
  53.                 console.log(":"+users[saved_index].password);
  54.             }
  55.         }
  56.  
  57.        
  58.     });
  59.  
  60.     socket.on("save_password", recieved_data => {
  61.         console.log("got");
  62.         saved_data = fs.readFileSync('users.json', 'utf8' , (err) => {
  63.             if (err) {
  64.               console.error(err)
  65.             }
  66.         });
  67.         users = JSON.parse(saved_data);
  68.         console.log("recived: "+recieved_data[0]+"  and  "+recieved_data[1]);
  69.         for(let i=0;i<users.length;i++){
  70.             if(users[i].username == recieved_data[0]){
  71.                 users[i].password = recieved_data[1];
  72.                 console.log("saved as"+ recieved_data[0]+" and "+recieved_data[1]);
  73.             }
  74.         }
  75.         save_data = JSON.stringify(users);
  76.         fs.writeFile('users.json', save_data, function (err) {
  77.             if (err) throw err;
  78.             console.log('Saved!');
  79.         });
  80.  
  81.         socket.emit("end_login");
  82.     });
  83.    
  84.     socket.on("check_password", recieved_data =>{
  85.         saved_data = fs.readFileSync('users.json', 'utf8' , (err) => {
  86.             if (err) {
  87.               console.error(err)
  88.               return
  89.             }
  90.         });
  91.         users = JSON.parse(saved_data);
  92.        
  93.         for(let i=0;i<users.length;i++){
  94.             if(users[i].username == recieved_data[0]){
  95.                 if(users[i].password==recieved_data[1]){
  96.                     socket.emit("correct_password");
  97.                 }
  98.                 else{
  99.                     console.log("bout to send inccorect pass");
  100.                     socket.emit("incorrect_password");
  101.                 }
  102.             }
  103.         }
  104.     });
  105.  
  106.     socket.on("logged_in", recieved_data =>{
  107.         socket.broadcast.emit("new_partner", recieved_data);
  108.     });
  109. })
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement