Fix database model associations and update API route

This commit is contained in:
newtbot
2024-01-27 20:15:29 +08:00
parent 6190cb63cd
commit d491750916
14 changed files with 61 additions and 164 deletions

View File

@ -1,9 +1,7 @@
const { addToken } = require("../functions/api");
const { checkEmail , getUserByEmail } = require("../functions/user");
const { addToken, checkToken } = require("../functions/api");
const { checkEmail, getUserByEmail } = require("../functions/user");
const { sendTokenEmail } = require("../functions/nodeMail");
const express = require("express");
const router = express.Router();
@ -14,7 +12,7 @@ const router = express.Router();
4) store the api key in database
*/
//token/new
//curl localhost:3000/api/v0/token/new -H "Content-Type: application/json" -X POST -d
//curl localhost:3000/api/v0/token/new -H "Content-Type: application/json" -X POST -d
//'{"userid": "5", "permission": "canRead" ,}'
router.post("/new", async (req, res, next) => {
try {
@ -24,29 +22,33 @@ router.post("/new", async (req, res, next) => {
let error = new Error("Email not found");
error.status = 400;
return next(error);
}
else
{
//console.log("email found");
} else {
let userid = await getUserByEmail(req.body.email);
if (!userid) return false;
const token = await addToken(userid.id, "canRead" , "2204-01-24 07:34:36" );
if (!token) return false;
sendTokenEmail(req.body.email, token);
res.json({
message: "Token generated successfully and sent to email",
})
const tokenRes = await checkToken(userid.id);
if (tokenRes.isKey !== "null" && tokenRes.isKey !== "isKey") {
//allow user to create token
const token = await addToken(
userid.id,
"canRead",
"isKey",
"2204-01-24 07:34:36"
);
if (!token) return false;
sendTokenEmail(req.body.email, token);
res.json({
message: "Token generated successfully and sent to email",
});
}
}
//const token = await addToken(req.body.userid, "canRead" , "2204-01-24 07:34:36" );
//res.json({token: token});
//const token = await addToken(req.body.userid, "canRead" , "2204-01-24 07:34:36" );
//res.json({token: token});
} catch (error) {
console.error(error);
next(error);
}
});
module.exports = router;

View File

@ -7,7 +7,7 @@ const router = express.Router();
//getbyid
router.get("/me", async function (req, res, next) {
try {
let user = await getUserByID(req.user);
let user = await getUserByID(req.user); //req.user assigned in middleware!
//console.log(user);
res.json({
user: user,