X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=server%2Froutes%2Fchallenges.js;h=28103fce50ff2ef7b3085f7ad15d449a11a13280;hb=fe4c7e67075416c48aafe9e307bef5afea7937bc;hp=7675689990a7e48efc96442f27001a85b5f1c3ed;hpb=b1aa927be964db4fa6a3eb7cf6c04640951d7dbb;p=vchess.git diff --git a/server/routes/challenges.js b/server/routes/challenges.js index 76756899..28103fce 100644 --- a/server/routes/challenges.js +++ b/server/routes/challenges.js @@ -4,6 +4,7 @@ let router = require("express").Router(); const access = require("../utils/access"); const ChallengeModel = require("../models/Challenge"); const UserModel = require("../models/User"); //for name check +const params = require("../config/parameters"); router.get("/challenges", (req,res) => { ChallengeModel.getByUser(req.query["uid"], (err,challenges) => { @@ -24,9 +25,8 @@ router.post("/challenges", access.logged, access.ajax, (req,res) => { to: req.body.chall.to, //string: user name (may be empty) }; const insertChallenge = () => { - ChallengeModel.create(challenge, (err) => { - if (!!err) - return res.json(err); + ChallengeModel.create(challenge, (err,ret) => { + return res.json(err || {cid:ret.cid}); }); }; if (!!req.body.chall.to) @@ -35,26 +35,18 @@ router.post("/challenges", access.logged, access.ajax, (req,res) => { if (!!err || !user) return res.json(err | {errmsg: "Typo in player name"}); challenge.to = user.id; //ready now to insert challenge + insertChallenge(); + if (user.notify) + UserModel.notify(user, "New challenge: " + params.siteURL + "/"); }); - insertChallenge(); } else insertChallenge(); }); -// "Challenge update" --> someone accepted a challenge -router.put("/challenges", access.logged, access.ajax, (req,res) => { - // launchGame(cid, uid) - // TODO: gather challenge infos - // Then create game, and remove challenge: - ChallengeModel.remove(cid, req.userId, err => { - res.json(err || {}); - }); -}); - router.delete("/challenges", access.logged, access.ajax, (req,res) => { const cid = req.query.id; - ChallengeModel.remove(cid, req.userId, err => { + ChallengeModel.safeRemove(cid, req.userId, err => { res.json(err || {}); //TODO: just "return err" because is empty if no errors }); });