25 lines
680 B
JavaScript
25 lines
680 B
JavaScript
const { User } = require("./utils/user");
|
|
|
|
function verifyParams(req) {
|
|
return typeof req.token === "string";
|
|
}
|
|
|
|
module.exports = async function (con, req, cb) {
|
|
if (!verifyParams(req))
|
|
return cb({
|
|
error: "Invalid params. Required param token must be a string",
|
|
trace_id: req.trace_id,
|
|
ended: true,
|
|
});
|
|
const invalidData = () =>
|
|
cb({ error: "Invalid token", trace_id: req.trace_id, ended: true });
|
|
const ok = (userdata) =>
|
|
cb({ result: userdata, trace_id: req.trace_id, ended: true });
|
|
|
|
// At develop!
|
|
const user = User.getByToken(req.token);
|
|
if (user === null) return invalidData();
|
|
global.authed.set(con, user);
|
|
return ok(user.getUserForAPI(true));
|
|
};
|