diff --git a/API/src/database/Database.ts b/API/src/database/Database.ts index 603d5bc3f769f62ecd887f602edfde202c9d6f4c..4766c5b5eef5e03fc90afd89f76b71ea7c8461c2 100644 --- a/API/src/database/Database.ts +++ b/API/src/database/Database.ts @@ -47,9 +47,8 @@ class DBHandler { var okay = await this.comparePassword(user) else throw JSON.stringify({message: "Username does not exists"}); - if (okay) { - return await asyncdb.all("SELECT username, user_type FROM users WHERE username='" + user.username + "'") - } + if (okay) + return await asyncdb.get("SELECT username, user_type FROM users WHERE username='" + user.username + "'") else throw JSON.stringify({message: "Incorrect Password"}); } @@ -69,24 +68,21 @@ class DBHandler { } async getUsers(res:express.Response) { - asyncdb.all("SELECT * FROM users") + const query = "SELECT * FROM users"; + asyncdb.all(query) .then(result => res.status(StatusCodes.OK).json(result).end()) .catch(err => console.log(err)); } async postUser(req:express.Request, res:express.Response) { const a = req.body as User_t; - - - const request = "INSERT INTO users (username, user_pass, user_type) \ + const query = "INSERT INTO users (username, user_pass, user_type) \ VALUES ('" + a.username + "','" + a.password + "','" + a.type +"')"; - - - asyncdb.all(request) - .then( () => res.status(StatusCodes.OK)) - .catch(err => console.log(err)); + asyncdb.all(query) + .then( () => res.status(StatusCodes.OK)) + .catch(err => console.log(err)); } async updateUser(req:express.Request, res:express.Response) { @@ -115,25 +111,22 @@ class DBHandler { const insert_question = "INSERT INTO questions (question, category) VALUES ('"+ a.question +"', '"+ a.category +"')"; const get_id = "SELECT id FROM questions WHERE question='" + a.question + "'"; - asyncdb.all(insert_question) - .then( () => { - asyncdb.get(get_id) - .then(id_json => { - const id_obj = id_json as Question_t; - const insert_correct = "INSERT INTO answer (text_answer, id_question, correct) \ - VALUES ('" + a.answers.CORRECT + "', " + id_obj.id + ", 'true')"; - - - asyncdb.all(insert_correct) - .catch(err => console.log(err)); - - a.answers.WRONG.forEach(answer => asyncdb.all("INSERT INTO answer (text_answer, id_question, correct) \ - VALUES ('" + answer + "', " + id_obj.id + ", 'false')") - .catch(err => console.log(err))); - }) - .catch(e => console.log(e)); - }) - .catch(e => console.log(e)); + await asyncdb.all(insert_question); + + const id_json = await asyncdb.get(get_id) + + const id_obj = id_json as Question_t; + const insert_correct = "INSERT INTO answer (text_answer, id_question, correct) \ + VALUES ('" + a.answers.CORRECT + "', " + id_obj.id + ", 'true')"; + + + asyncdb.all(insert_correct) + .catch(err => console.log(err)); + + a.answers.WRONG.forEach(answer => asyncdb.all("INSERT INTO answer (text_answer, id_question, correct) \ + VALUES ('" + answer + "', " + id_obj.id + ", 'false')") + .catch(err => console.log(err))); + res.end(); } diff --git a/API/src/routes/BaseRoutes.ts b/API/src/routes/BaseRoutes.ts index 4ba755b9b37407c1f81915e8f6f75c9e65e59ebc..5a167b1af26b0330fd72fd14f1aa647320a134b5 100644 --- a/API/src/routes/BaseRoutes.ts +++ b/API/src/routes/BaseRoutes.ts @@ -167,7 +167,7 @@ router.post(ROUTE+"/login", (req: express.Request, res: express.Response) => { DBHandler.getLoginJSON(user) .then(loginJSON => { - res.status(StatusCodes.OK).json(generateToken(loginJSON[0] as User_t))}) + res.status(StatusCodes.OK).json(generateToken(loginJSON as User_t))}) .catch(err => { console.log(err) res.status(StatusCodes.UNAUTHORIZED).json(JSON.parse(err));