let userInsert = new Promise((resolve, reject) => {
db.query('INSERT INTO users (email, password) VALUES (?, ?)', [user.email, user.password], err => {
if(err) {
reject(err);
return;
}
resolve();
});
});
exports.get=function* (next){
const ctx=this;
let sql = "SELECT * FROM clients_forums_knowledge_base ORDER BY orders ASC";
let forumsKnowledgeBase = yield ctx.locals.db.query(sql);
for(let idx = 0, n = forumsKnowledgeBase.length; idx < n; idx++) {
let elem = forumsKnowledgeBase[idx];
let sql='SELECT clients_knowledge_base.name, clients_knowledge_base.id,clients_knowledge_base.file FROM clients_knowledge_base,clients_forums_knowledge_base WHERE clients_forums_knowledge_base.id = clients_knowledge_base.forum AND clients_knowledge_base.forum = ? ORDER BY name ASC';
let rows = yield ctx.locals.db.query(sql,elem.id);
elem.items=rows ;
}
};
const zlib = require('zlib');
const fs = require('fs');
/**
* Read the gz compresed file
* @param filename (string) full path to file
* @return (Promise<Buffer>)
*/
function readGZipFile(filename) {
return new Promise((resolve, reject) => {
fs.readFile(filename, (err, buf) => {
if(err) {
reject(err);
return;
}
zlib.gunzip(buf, (err, buf) => {
if(err) {
reject(err);
return;
}
resolve(buf);
});
});
});
}
//Использование
const path = require('path');
readGZipFile(path.resolve(__dirname, 'lib.txt.gz')).then(buf => JSON.parse(buf.toString())).then(data => {
//Ваш код для работы с data
});
io.sockets.on('connection', function(socket) {
var group = 'fnatic';
var url = 'http://steamcommunity.com/groups/' + group + '#members';
request(url, function(err, resp, body){
$ = cheerio.load(body);
links = $('a');
var users = [];
$(links).each(function(i, link){
// console.log($(link).attr('href'));
users.push($(link).attr('href'));
});
socket.emit('hatler', users);
});
});
checkPrice(items).then(console.log.bind(console, "Call result: "));
function checkPrice(items) {
return Promise.all(items.map(function(item, index, array) {
return new Promise(function(resolve) {
market.getItemsPrice(730, item.market_hash_name, function(data) {
var price = parseFloat(data[item.market_hash_name].lowest_price.replace("$",""));
resolve(price);
console.log("Function result: " + price);
});
});
})).then(function(prices) {
//сумма всех полученных цен
return prices.reduce(function(result, price) {
result += price;
return result;
}, 0);
});
}
'use strict';
const net = require('net');
const server = net.createServer(socket => {
var data = '';
socket.on('data', d => {
data += d;
var p = data.indexOf('\n');
if(~p) {
let cmd = data.substr(0, p);
data = data.slice(p + 1);
onCommand(cmd.trim(), socket);
}
});
});
server.listen(() => {
var address = server.address();
console.log('opened server on', address);
});
function onCommand(cmd, socket) {
switch(cmd) {
case 'open':
socket.write('opened\n');
break;
case 'add':
socket.write('added\n');
break;
case 'process':
socket.write('processed\n');
break;
}
}