Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var Winston = require('winston');
- var express = require('express');
- var fs = require('fs');
- var app = require('http').createServer(handler);
- var io = require('socket.io')(app);
- var steamUserInventory = require('steam-user-inventory');
- var mysql = require('mysql');
- var request = require('request');
- app.listen(8090);
- var url = "http://steamcommunity.com/inventory/76561198079381122/433850/1?l=english&count=5000";
- var pool = mysql.createPool({
- connectionLimit : 10,
- database: 'trade',
- host: 'localhost',
- user: 'root',
- password: 'fncjpfncjpdu86'
- });
- function handler (req, res) {
- fs.readFile(__dirname + '/index.html',
- function (err, data) {
- if (err) {
- res.writeHead(500);
- return res.end('Error loading index.html');
- }
- res.writeHead(200);
- res.end(data);
- });
- }
- var app = express();
- var items;
- var h1z1;
- var test;
- var table = [];
- fs.readdir("items/", function(err, filenames) {
- if (err) {
- onError(err);
- return;
- }
- filenames.forEach(function(filename) {
- fs.readFile("items/" + filename, 'utf-8', function(err, content) {
- if (err) {
- onError(err);
- return;
- }
- var items = JSON.parse(content);
- for (var i = 0; i < items.length; ++i) {
- table.push(items[i]);
- }
- });
- });
- });
- var h1z1prices;
- fs.readFile("price/H1Z1-price.json", 'utf-8', function (err, content) {
- if (err) {
- return console.log(err);
- }
- h1z1prices = JSON.parse(content);
- });
- function loadUserInventory (hash, socket){
- query('SELECT steamID, update_time FROM users WHERE hash = "' + hash +'";', function (err, res) {
- if(err) {
- console.log(err);
- } else {
- var time = res[0].update_time;
- var after = Date.now();
- var verif = after - time;
- var steamID = res[0].steamID;
- // 60 * 10 * 1000
- if(verif > 600){
- query('UPDATE users SET update_time = "' + Date.now() + '" WHERE hash = "' + hash +'";', function (err, res1) {
- if (err) {
- console.log(err)
- } else {
- console.log(steamID);
- steamUserInventory(steamID, '433850/1').then(dataSU => {
- query('DELETE FROM users_items WHERE id_user = "' + steamID +'";', function (err, re) {
- if (err) {
- console.log(err)
- } else {
- for (var j in dataSU){
- query('INSERT INTO users_items (`appid`, `category`, `classid`, `exterior`, `id`, `image`, `instanceid`, `link`, `marketTradableRestriction`, `marketable`, `name`, `pos`, `commodity`, `description`, `icon_url`, `icon_url_large`, `market_hash_name`, `market_name`, `tag`, `tradable`, `type`, `id_user`) VALUES (' + dataSU[j].appid + ', "' + dataSU[j].category + '", ' + dataSU[j].classid + ', "' + dataSU[j].exterior + '", ' + dataSU[j].id + ', "' + dataSU[j].image + '", ' + dataSU[j].instanceid + ', "' + dataSU[j].link + '", "' + dataSU[j].marketTradableRestriction + '", ' + dataSU[j].marketable + ', "' + dataSU[j].name + '", "' + dataSU[j].pos + '", "' + dataSU[j].commodity + '", "' + dataSU[j].description + '", "' + dataSU[j].icon_url + '", "' + dataSU[j].icon_url_large + '", "' + dataSU[j].market_hash_name + '", "' + dataSU[j].market_name + '", "' + dataSU[j].tag + '", ' + dataSU[j].tradable + ', "' + dataSU[j].type + '", "' + steamID + '" );', function (err, resultat) {
- if (err){
- console.log(err)
- }
- });
- }
- }
- });
- socket.emit('inv user', {inv: dataSU})
- });
- }
- });
- } else {
- console.log('else')
- }
- }
- });
- }
- io.on('connection', function (socket) {
- console.log("New connection !!");
- socket.emit('inventory', {result: table});
- socket.emit('h1z1json', { prices: h1z1prices });
- socket.on('load user', function (data) {
- console.log(data.client);
- // loadUserInventory(data.client, socket)
- request(url , function (error, res, body) {
- if (!error && res.statusCode === 200) {
- // console.log(body) // Print the json response
- var data = JSON.parse(body);
- // console.log(data.descriptions);
- var desc = data.descriptions;
- var assets = data.assets;
- var response = [];
- Object.keys(assets).forEach(key => {
- var temp = assets[key];
- var i;
- Object.keys(desc).forEach(key => {
- var temp2 = desc[key];
- if (temp.classid == temp2.classid){
- i = key;
- }
- });
- let item = desc[i];
- // console.log(temp);
- // console.log(desc);
- let data = {
- id: temp.id,
- amount: temp.amount,
- pos: temp.pos,
- name: item.name,
- appid: item.appid,
- classid: item.classid,
- instanceid: item.instanceid,
- tradable: item.tradable,
- marketable: item.marketable,
- marketTradableRestriction: item.market_tradable_restriction,
- link: item.actions ? item.actions[0].link : null,
- image: `http://steamcommunity-a.akamaihd.net/economy/image/${item.icon_url_large || item.icon_url}`,
- category: null,
- type: null,
- exterior: null,
- quality: null,
- raw: item,
- };
- response.push(data);
- });
- socket.emit('inv user', {inv: response})
- }
- });
- });
- });
- function query(sql, callback) {
- if (typeof callback === 'undefined') {
- callback = function() {};
- }
- pool.getConnection(function(err, connection) {
- if(err) return callback(err);
- // console.log('DB connection ID: '+connection.threadId);
- connection.query(sql, function(err, rows) {
- if(err) return callback(err);
- connection.release();
- return callback(null, rows);
- });
- });
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement