Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var express = require('express');
- var steam = require('steam-login');
- var cookieParser = require('cookie-parser');
- var crypto = require('crypto');
- var mysql = require('mysql');
- var app = express();
- var server = require('http').createServer(app).listen(80);
- var io = require('socket.io').listen(server);
- users = [];
- connections = [];
- mysteamid = [];
- //app.get('/', function(req, res){
- //res.sendFile(__dirname + '/index.html');
- //});
- // app.get('/login', function(req, res){
- //res.sendFile(__dirname + '/login.html');
- //});
- app.use(cookieParser());
- app.use(require('express-session')({ resave: false, saveUninitialized: false, secret: 'a secret' }));
- app.use(steam.middleware({
- realm: 'http://csultra.com/',
- verify: 'http://csultra.com/steam_login_information',
- apiKey: '57A23DA429EBD2D0CA8F550CED49C6FA'}
- ));
- app.get('/', function(req, res) {
- res.send(req.user == null ? 'not logged in' : 'hello ' + req.user.username).end();
- });
- app.get('/login', steam.authenticate(), function(req, res) {
- res.redirect('/');
- });
- app.get('/steam_login_information', steam.verify(), function(req, res) {
- res.send(req.user).end();
- var steamid = req.user.steamid;
- var name = req.user.username;
- var small_avatar = req.user.avatar.small;
- var medium_avatar = req.user.avatar.medium;
- var large_avatar = req.user.avatar.large;
- var hash = crypto.createHash('md5').update(Math.random(100000, 1000000) + steamid + Math.random(1, 10000)).digest("hex");
- var UserInfo = "SELECT * FROM `users` WHERE `steamid` = '"+steamid+"'";
- var UpdatingInfo = "UPDATE `users` SET name='"+name+"', small_avatar='"+small_avatar+"', medium_avatar='"+medium_avatar+"', large_avatar='"+large_avatar+"', hash='"+hash+"' WHERE steamid='"+steamid+"'";
- var InsertingInfo = "INSERT INTO `users` (steamid, name, small_avatar, medium_avatar, large_avatar, hash) VALUES ('"+steamid+"','"+name+"','"+small_avatar+"', '"+medium_avatar+"', '"+large_avatar+"', '"+hash+"')";
- var db = mysql.createConnection({
- host: 'localhost',
- user: 'root',
- password: '!333dtrg0fgd2!RD',
- database: 'fqaffw52owqdas42'
- });
- db.connect();
- db.query(UserInfo, function(err, rows) {
- if (!err) {
- if (rows.length === 0){
- db.query(InsertingInfo, function(err, rows) {
- if (!err){
- console.log('user inserted');
- //res.cookie('hash', hash, {maxAge: 604800});
- db.end();
- } else{
- console.log(err);
- db.end();
- }
- });
- } else {
- db.query(UpdatingInfo, function(err, rows) {
- if (!err) {
- console.log('user updated');
- //res.cookie('hash', hash, {maxAge: 604800});
- db.end();
- } else {
- console.log(err);
- db.end();
- }
- });
- }
- } else {
- console.log(err);
- db.end();
- }
- });
- });
- app.get('/logout', steam.enforceLogin('/'), function(req, res) {
- req.logout();
- res.redirect('/');
- });
- io.sockets.on('connection', function(socket){
- // STUFF RAN ON CONNECTION
- connections.push(socket);
- console.log('Connection: %s current users', connections.length);
- // EVENTS
- socket.on('disconnect', function(data){
- connections.splice(connections.indexOf(socket), 1);
- console.log('Disconnection: %s current users', connections.length);
- });
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement