This commit is contained in:
Lukian LEIZOUR 2024-06-06 13:53:44 +02:00
parent cd74f8e71b
commit d4d7f51d03
6 changed files with 58 additions and 7 deletions

View file

@ -19,9 +19,13 @@ router.post('/', async (req, res) => {
return res.status(400).send({error: "wrong login informations"});
}
console.log(user);
if (!user[0].verified) {
return res.status(400).send({error: "you need to be verified to login"})
}
res.status(200).send({message: "connection successful", token: jwt.sign({user: {id: user[0].id, username: user[0].username, name: user[0].name, lastname: user[0].lastname}, expiration: 20000}, process.env.JWTSecret)});
const expiration = new Date().getTime() + 1000 * 60 * 60 * 24 * 7;
res.status(200).send({message: "connection successful", token: jwt.sign({user: {id: user[0].id, username: user[0].username, name: user[0].name, lastname: user[0].lastname}, expiration: 2000}, process.env.JWTSecret)});
});
module.exports = router;

View file

@ -12,8 +12,16 @@ router.post('/', async (req, res) => {
return res.status(400).send({error: "invalid token"});
}
if (!gameid) {
return res.status(400).send({error: "invalid gameid"});
}
try {
const user = jwt.verify(token, process.env.JWTSecret);
if (user.expiration < Date.now()) {
return res.status(400).send({error: "token expired"});
}
const game = await getGame(gameid);
@ -21,7 +29,7 @@ router.post('/', async (req, res) => {
return res.status(400).send({error: "this game doesn't exist"});
}
if (JSON.parse(game[0].helpers).includes(user.user.id)) {
if (JSON.parse(game[0].helpers).includes(user.user.username)) {
return res.status(400).send({error: "you are already an helper for this game"});
}

View file

@ -12,8 +12,16 @@ router.post('/', async (req, res) => {
return res.status(400).send({error: "invalid token"});
}
if (!gameid) {
return res.status(400).send({error: "invalid gameid"});
}
try {
jwt.verify(token, process.env.JWTSecret);
const user = jwt.verify(token, process.env.JWTSecret);
if (user.expiration < Date.now()) {
return res.status(400).send({error: "token expired"});
}
} catch {
return res.status(400).send({error: "invalid token"});
}

View file

@ -12,8 +12,16 @@ router.post('/', async (req, res) => {
return res.status(400).send({error: "invalid token"});
}
if (!gameid) {
return res.status(400).send({error: "invalid gameid"});
}
try {
jwt.verify(token, process.env.JWTSecret);
const user = jwt.verify(token, process.env.JWTSecret);
if (user.expiration < Date.now()) {
return res.status(400).send({error: "token expired"});
}
} catch {
return res.status(400).send({error: "invalid token"});
}

View file

@ -13,7 +13,11 @@ router.post('/', async (req, res) => {
}
try {
jwt.verify(token, process.env.JWTSecret);
const user = jwt.verify(token, process.env.JWTSecret);
if (user.expiration < Date.now()) {
return res.status(400).send({error: "token expired"});
}
} catch {
return res.status(400).send({error: "invalid token"});
}

View file

@ -1,7 +1,7 @@
const express = require('express');
const jwt = require('jsonwebtoken');
const {removeHelper} = require("../../../libs/mysql.js")
const {removeHelper, getGame} = require("../../../libs/mysql.js")
const router = express.Router();
@ -12,8 +12,27 @@ router.post('/', async (req, res) => {
return res.status(400).send({error: "invalid token"});
}
if (!gameid) {
return res.status(400).send({error: "invalid gameid"});
}
try {
const user = jwt.verify(token, process.env.JWTSecret);
if (user.expiration < Date.now()) {
return res.status(400).send({error: "token expired"});
}
const game = await getGame(gameid);
if (!game[0]) {
return res.status(400).send({error: "this game doesn't exist"});
}
if (!JSON.parse(game[0].helpers).includes(user.user.username)) {
return res.status(400).send({error: "you are not an helper for this game"});
}
await removeHelper(user.user.username, gameid);
} catch {
return res.status(400).send({error: "invalid token"});