X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=server%2Froutes%2Fproblems.js;h=8a82462eb13a985c2906f4ccfce26a509a6841f4;hb=059228c9fd737361dc97de69811daed5abbd6254;hp=732ea7109064d9fee4a367bd76c408217f03b4c1;hpb=e57c4de4148d43e7635e09adcde4e56585aea303;p=vchess.git diff --git a/server/routes/problems.js b/server/routes/problems.js index 732ea710..8a82462e 100644 --- a/server/routes/problems.js +++ b/server/routes/problems.js @@ -4,18 +4,16 @@ const ProblemModel = require("../models/Problem"); const sanitizeHtml = require('sanitize-html'); router.post("/problems", access.logged, access.ajax, (req,res) => { - if (ProblemModel.checkProblem(req.body.prob)) - { - const problem = - { + if (ProblemModel.checkProblem(req.body.prob)) { + const problem = { vid: req.body.prob.vid, fen: req.body.prob.fen, uid: req.userId, instruction: sanitizeHtml(req.body.prob.instruction), solution: sanitizeHtml(req.body.prob.solution), }; - ProblemModel.create(problem, (err,ret) => { - res.json(err || {id:ret.pid}); + ProblemModel.create(problem, (err, ret) => { + res.json(err || ret); }); } else @@ -24,24 +22,21 @@ router.post("/problems", access.logged, access.ajax, (req,res) => { router.get("/problems", access.ajax, (req,res) => { const probId = req.query["pid"]; - if (probId && probId.match(/^[0-9]+$/)) - { - ProblemModel.getOne(req.query["pid"], (err,problem) => { + const cursor = req.query["cursor"]; + if (!!probId && !!probId.match(/^[0-9]+$/)) { + ProblemModel.getOne(req.query["pid"], (err, problem) => { res.json(err || {problem: problem}); }); - } - else - { - ProblemModel.getAll((err,problems) => { - res.json(err || {problems:problems}); + } else if (!!cursor && !!cursor.match(/^[0-9]+$/)) { + ProblemModel.getNext(cursor, (err, problems) => { + res.json(err || { problems: problems }); }); } }); router.put("/problems", access.logged, access.ajax, (req,res) => { let obj = req.body.prob; - if (ProblemModel.checkProblem(obj)) - { + if (ProblemModel.checkProblem(obj)) { obj.instruction = sanitizeHtml(obj.instruction); obj.solution = sanitizeHtml(obj.solution); ProblemModel.safeUpdate(obj, req.userId);