X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=server%2Futils%2Faccess.js;h=88aab68ce01bf25e1fbc3acad5fe211dd4f470ee;hb=7a0c1b7e33a346195caebfdfa6489e7c6d0457e6;hp=36511dba87eb74744b049cbceb16eb092e984898;hpb=f0c68a04e31bb6a4b2f8b94a532ef3ca2eebbe3e;p=vchess.git diff --git a/server/utils/access.js b/server/utils/access.js index 36511dba..88aab68c 100644 --- a/server/utils/access.js +++ b/server/utils/access.js @@ -1,37 +1,33 @@ var UserModel = require("../models/User"); -module.exports = -{ +module.exports = { + // Prevent access to "users pages" logged: function(req, res, next) { const callback = () => { if (!loggedIn) - res.json({errmsg: "Error: try to delete cookies"}); + res.json({ errmsg: "Error: try to delete cookies" }); else next(); }; let loggedIn = undefined; - if (!req.cookies.token) - { + if (!req.cookies.token) { loggedIn = false; callback(); - } - else - { - UserModel.getOne("sessionToken", req.cookies.token, function(err, user) { - if (!!user) - { - req.userId = user.id; - req.userName = user.name; - loggedIn = true; - } - else - { - // Token in cookies presumably wrong: erase it - res.clearCookie("token"); - loggedIn = false; + } else { + UserModel.getOne( + "sessionToken", req.cookies.token, "id", + (err, user) => { + if (!!user) { + req.userId = user.id; + loggedIn = true; + } else { + // Token in cookies presumably wrong: erase it + res.clearCookie("token"); + loggedIn = false; + } + callback(); } - callback(); - }); + ); } }, @@ -39,28 +35,26 @@ module.exports = unlogged: function(req, res, next) { // Just a quick heuristic, which should be enough const loggedIn = !!req.cookies.token; - if (loggedIn) - res.json({errmsg: "Error: try to delete cookies"}); + if (loggedIn) res.json({ errmsg: "Error: try to delete cookies" }); else next(); }, // Prevent direct access to AJAX results ajax: function(req, res, next) { - if (!req.xhr) - res.json({errmsg: "Unauthorized access"}); + if (!req.xhr) res.json({ errmsg: "Unauthorized access" }); else next(); }, - // Check for errors before callback (continue page loading). TODO: better name. + // Check for errors before callback (continue page loading). (TODO: name?) checkRequest: function(res, err, out, msg, cb) { - if (err) - res.json({errmsg: err.errmsg || err.toString()}); - else if (!out - || (Array.isArray(out) && out.length == 0) - || (typeof out === "object" && Object.keys(out).length == 0)) - { - res.json({errmsg: msg}); - } - else cb(); - }, -} + if (!!err) res.json({ errmsg: err.errmsg || err.toString() }); + else if ( + !out || + (Array.isArray(out) && out.length == 0) || + (typeof out === "object" && Object.keys(out).length == 0) + ) { + res.json({ errmsg: msg }); + } else cb(); + } + +};