aboutsummaryrefslogtreecommitdiffstats
path: root/sockets.js
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2020-01-05 18:39:30 -0800
committerAdam Soltys <[email protected]>2020-01-05 18:39:30 -0800
commitb0e279aff714164a01ece9d2d933e4649d3ad48c (patch)
tree2ceabc01f0e8f3f54e4f91ec4aed98bcc43c1488 /sockets.js
parent3b841f05921311cf149b7987d76738fcb053a52e (diff)
downloadcoinos-server-b0e279aff714164a01ece9d2d933e4649d3ad48c.tar.gz
coinos-server-b0e279aff714164a01ece9d2d933e4649d3ad48c.zip
queue on-chain payments
Diffstat (limited to 'sockets.js')
-rw-r--r--sockets.js32
1 files changed, 17 insertions, 15 deletions
diff --git a/sockets.js b/sockets.js
index a6f84073..09be6526 100644
--- a/sockets.js
+++ b/sockets.js
@@ -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];
};