1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
| var https = require('https');
var mysql = require('mysql');
var sha1 = require('sha1');
var app = require('express')();
var fs = require('fs');
var options = {key: fs.readFileSync('../../etc/apache2/ssl/key.key'),cert: fs.readFileSync('../../etc/apache2/ssl/cert.crt')};
var server = https.createServer(options).listen(1812);
var i;
var connection = mysql.createConnection({
host: '****',
user: '****',
password: '****',
database: '****'
});
var io = require('socket.io').listen(server);
var users = [];
io.sockets.on('connection', function(socket){
var me;
for(i = 0; i < users.length; i++) {
socket.emit('newusr', users[i]);
}
socket.on('login', function(user, callback){
connection.query('SELECT * FROM users INNER JOIN users_infos ON users.id = users_infos.id WHERE email = ? AND mdp = ?',[user.email,sha1(user.mdp)],function(error, rows, fields){
if(error){
console.log(error);
return;
}
if(rows.length == 1){
var userIndex = -1;
me = rows[0];
for (i = 0; i < users.length; i++) {
if (users[i].email === me.email) {
userIndex = i;
}
}
if(me !== undefined && userIndex === -1){
users.push(me);
io.sockets.emit('newusr', me);
callback(true);
} else {
callback(false);
}
}
});
});
socket.on('disconnect', function(){
});
}); |
Partager