diff options
| author | Adam Soltys <[email protected]> | 2020-04-13 19:59:16 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2020-04-13 19:59:16 -0700 |
| commit | c8c2b9df1c9f70a95673f436b7f1e14964a6744e (patch) | |
| tree | ddd7a94104f5a21884e57d0f47272ca844e26e8f /routes | |
| parent | efc94656d47ee8ca3a83d95a4526e1dbc76a2218 (diff) | |
| download | coinos-server-c8c2b9df1c9f70a95673f436b7f1e14964a6744e.tar.gz coinos-server-c8c2b9df1c9f70a95673f436b7f1e14964a6744e.zip | |
getuser utility function
Diffstat (limited to 'routes')
| -rw-r--r-- | routes/liquid/receive.js | 31 | ||||
| -rw-r--r-- | routes/users.js | 15 |
2 files changed, 31 insertions, 15 deletions
diff --git a/routes/liquid/receive.js b/routes/liquid/receive.js index ff58f1c4..1a70c61c 100644 --- a/routes/liquid/receive.js +++ b/routes/liquid/receive.js @@ -59,7 +59,6 @@ zmqRawTx.on("message", async (topic, message, sequence) => { where: params }); - console.log("params", params); if (account) { account.pending += value; await account.save(); @@ -127,13 +126,36 @@ setInterval(async () => { let hash = arr[i]; let p = await db.Payment.findOne({ - include: [{ model: db.User, as: "user" }], where: { hash, confirmed: 0, received: 1 } }); - p.confirmed = 1; + const user = await db.User.findOne({ + include: [ + { + model: db.Payment, + as: "payments", + order: [["id", "DESC"]], + where: { + [Op.or]: { + received: true, + amount: { + [Op.lt]: 0, + }, + }, + }, + limit: 12 + }, + { + model: db.Account, + as: "accounts", + }, + ], + where: { + id: p.user_id + } + }); - let user = await p.getUser(); + p.confirmed = 1; const asset = await db.Account.findOne({ where: { @@ -148,6 +170,7 @@ setInterval(async () => { } else { asset.balance += p.amount + p.tip; asset.pending -= Math.min(user.pending, p.amount + p.tip); + await asset.save(); } l.info("liquid confirmed", user.username, p.asset, p.amount, p.tip); diff --git a/routes/users.js b/routes/users.js index 83f8920e..7c9bce31 100644 --- a/routes/users.js +++ b/routes/users.js @@ -4,6 +4,7 @@ const jwt = require("jsonwebtoken"); const uuidv4 = require("uuid/v4"); const fb = "https://graph.facebook.com/"; const authenticator = require("otplib").authenticator; +const { getUser } = require("../lib/utils"); const pick = (O, ...K) => K.reduce((o, k) => ((o[k] = O[k]), o), {}); let faucet = 1000; @@ -182,7 +183,7 @@ app.post("/user", auth, async (req, res) => { } await user.save(); - emit(user.username, "user", req.user); + emit(user.username, "user", user); res.send({ user, token }); } catch (e) { l.error("error updating user", e); @@ -193,11 +194,7 @@ app.post("/login", async (req, res) => { let twofa = req.body.token; try { - let user = await db.User.findOne({ - where: { - username: req.body.username - } - }); + let user = await getUser(req.body.username); if ( !user || @@ -239,11 +236,7 @@ app.post("/facebookLogin", async (req, res) => { if (!check.data.data.is_valid) return res.status(401).end(); try { - let user = await db.User.findOne({ - where: { - username: req.body.userID - } - }); + let user = await getUser(req.body.userID); if (!user) { user = await db.User.create(user); |
