diff options
| author | Adam Soltys <[email protected]> | 2020-01-05 18:39:30 -0800 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2020-01-05 18:39:30 -0800 |
| commit | b0e279aff714164a01ece9d2d933e4649d3ad48c (patch) | |
| tree | 2ceabc01f0e8f3f54e4f91ec4aed98bcc43c1488 /sockets.js | |
| parent | 3b841f05921311cf149b7987d76738fcb053a52e (diff) | |
| download | coinos-server-b0e279aff714164a01ece9d2d933e4649d3ad48c.tar.gz coinos-server-b0e279aff714164a01ece9d2d933e4649d3ad48c.zip | |
queue on-chain payments
Diffstat (limited to 'sockets.js')
| -rw-r--r-- | sockets.js | 32 |
1 files changed, 17 insertions, 15 deletions
@@ -10,6 +10,19 @@ module.exports = (app, db, server) => { const socket = io(server, { origins: "*:*" }); const sids = {}; + const emit = (username, msg, data) => { + if (data.username !== undefined) data = pick(data, ...whitelist); + + if (!sids[username]) return; + sids[username].map((sid, i) => { + try { + socket.to(sid).emit(msg, data); + } catch (e) { + sids[username].splice(i, 1); + } + }); + }; + socket.use((socket, next) => { try { let token = socket.handshake.query.token; @@ -28,13 +41,15 @@ module.exports = (app, db, server) => { if (app.get("rates")) socket.emit("rate", app.get("rates").ask); socket.on("getuser", async (data, callback) => { /* eslint-disable-next-line */ - callback( + const user = await db.User.findOne({ + include: [{ model: db.Payment, as: "payments" }], where: { username: socket.request.user } }) - ); + + callback(user); }); socket.on("disconnect", s => { @@ -44,18 +59,5 @@ module.exports = (app, db, server) => { }); }); - const emit = (username, msg, data) => { - if (data.username !== undefined) data = pick(data, ...whitelist); - - if (!sids[username]) return; - sids[username].map((sid, i) => { - try { - socket.to(sid).emit(msg, data); - } catch (e) { - sids[username].splice(i, 1); - } - }); - }; - return [socket, emit]; }; |
