From 3a823c85ba116616627657535e95fcdb3c65b9d0 Mon Sep 17 00:00:00 2001 From: Arthur Lu Date: Fri, 24 Mar 2023 22:10:17 +0000 Subject: [PATCH] fix bug in validation Signed-off-by: Arthur Lu --- db.js | 4 +++- main.js | 4 ++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/db.js b/db.js index bed17a1..765be85 100644 --- a/db.js +++ b/db.js @@ -25,10 +25,12 @@ function init () { function requestResources (user, resources) { let approved = true; Object.keys(resources).forEach((element) => { - if(!db[user][element]) { // if the resource does not exist in the user's entry, assume the user is not allowed to use it + if(!(element in db[user])) { // if the resource does not exist in the user's entry, assume the user is not allowed to use it + console.log("a") approved = false; } else if (db[user][element] - resources[element] < 0) { + console.log("b") approved = false; } }); diff --git a/main.js b/main.js index 8cd1705..687ddbd 100644 --- a/main.js +++ b/main.js @@ -262,8 +262,8 @@ app.post("/api/resources", async (req, res) => { let currentConfig = await requestPVE(`${vmpath}/config`, "GET", null, null, pveAPIToken); let request = { - cores: Number(req.body.cores) - currentConfig.data.data.cores, - memory: Number(req.body.memory) - currentConfig.data.data.memory + cores: Number(req.body.cores) - Number(currentConfig.data.data.cores), + memory: Number(req.body.memory) - Number(currentConfig.data.data.memory) }; if (!requestResources(req.cookies.username, request)) { // check resource approval res.status(500).send({auth: auth, data:{request: request, error: `Not enough resources to satisfy request.`}});