projects
/
vchess.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add Checkered1 + fix last move highlights
[vchess.git]
/
server
/
routes
/
problems.js
diff --git
a/server/routes/problems.js
b/server/routes/problems.js
index
6cebb8f
..
746be9a
100644
(file)
--- a/
server/routes/problems.js
+++ b/
server/routes/problems.js
@@
-1,5
+1,6
@@
let router = require("express").Router();
const access = require("../utils/access");
let router = require("express").Router();
const access = require("../utils/access");
+const params = require("../config/parameters");
const ProblemModel = require("../models/Problem");
const sanitizeHtml = require('sanitize-html');
const ProblemModel = require("../models/Problem");
const sanitizeHtml = require('sanitize-html');
@@
-21,13
+22,16
@@
router.post("/problems", access.logged, access.ajax, (req,res) => {
});
router.get("/problems", 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 probId = req.query["id"];
+ const cursor = req.query["cursor"];
+ if (!!probId && !!probId.match(/^[0-9]+$/)) {
+ ProblemModel.getOne(probId, (err, problem) => {
res.json(err || {problem: problem});
});
res.json(err || {problem: problem});
});
- } else {
- ProblemModel.getAll((err,problems) => {
+ } else if (!!cursor && !!cursor.match(/^[0-9]+$/)) {
+ const onlyMine = (req.query["mode"] == "mine");
+ const uid = parseInt(req.query["uid"]);
+ ProblemModel.getNext(uid, onlyMine, cursor, (err, problems) => {
res.json(err || { problems: problems });
});
}
res.json(err || { problems: problems });
});
}
@@
-38,7
+42,7
@@
router.put("/problems", access.logged, access.ajax, (req,res) => {
if (ProblemModel.checkProblem(obj)) {
obj.instruction = sanitizeHtml(obj.instruction);
obj.solution = sanitizeHtml(obj.solution);
if (ProblemModel.checkProblem(obj)) {
obj.instruction = sanitizeHtml(obj.instruction);
obj.solution = sanitizeHtml(obj.solution);
- ProblemModel.safeUpdate(obj, req.userId);
+ ProblemModel.safeUpdate(obj, req.userId
, params.devs
);
}
res.json({});
});
}
res.json({});
});
@@
-46,7
+50,7
@@
router.put("/problems", access.logged, access.ajax, (req,res) => {
router.delete("/problems", access.logged, access.ajax, (req,res) => {
const pid = req.query.id;
if (pid.toString().match(/^[0-9]+$/))
router.delete("/problems", access.logged, access.ajax, (req,res) => {
const pid = req.query.id;
if (pid.toString().match(/^[0-9]+$/))
- ProblemModel.safeRemove(pid, req.userId);
+ ProblemModel.safeRemove(pid, req.userId
, params.devs
);
res.json({});
});
res.json({});
});