commit
This commit is contained in:
parent
fc2fdf8007
commit
defd655959
2 changed files with 57 additions and 0 deletions
43
api/v1/admin/verifyUser.js
Normal file
43
api/v1/admin/verifyUser.js
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
const express = require('express');
|
||||||
|
const jwt = require('jsonwebtoken');
|
||||||
|
|
||||||
|
const {setVerified, getUser} = require("../../../libs/mysql.js")
|
||||||
|
|
||||||
|
const router = express.Router();
|
||||||
|
|
||||||
|
router.post('/', async (req, res) => {
|
||||||
|
const {token, userid} = req.body;
|
||||||
|
|
||||||
|
if (!token) {
|
||||||
|
return res.status(400).send({error: "invalid token"});
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
const user = jwt.verify(token, process.env.JWTSecret);
|
||||||
|
|
||||||
|
if (user.expiration < Date.now()) {
|
||||||
|
return res.status(400).send({error: "token expired"});
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!user.user.admin) {
|
||||||
|
return res.status(400).send({error: "unauthorized"});
|
||||||
|
}
|
||||||
|
} catch {
|
||||||
|
return res.status(400).send({error: "invalid token"});
|
||||||
|
}
|
||||||
|
|
||||||
|
const user = await getUser(userid);
|
||||||
|
|
||||||
|
if (!user[0]) {
|
||||||
|
return res.status(400).send({error: "invalid userid"});
|
||||||
|
}
|
||||||
|
|
||||||
|
if (user[0].verified) {
|
||||||
|
return res.status(400).send({error: "user already verified"});
|
||||||
|
}
|
||||||
|
|
||||||
|
await setVerified(userid);
|
||||||
|
res.status(200).send({message: "user verified"});
|
||||||
|
});
|
||||||
|
|
||||||
|
module.exports = router;
|
|
@ -128,6 +128,19 @@ function getUnverifiedUsers() {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function setVerified(userid) {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
con.query(
|
||||||
|
`UPDATE users SET verified = 1 WHERE id = ${userid}`,
|
||||||
|
(error, result) => {
|
||||||
|
if (error) {
|
||||||
|
reject(new Error(error));
|
||||||
|
}
|
||||||
|
resolve(result);
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
getGames,
|
getGames,
|
||||||
getGame,
|
getGame,
|
||||||
|
@ -139,4 +152,5 @@ module.exports = {
|
||||||
addUser,
|
addUser,
|
||||||
|
|
||||||
getUnverifiedUsers,
|
getUnverifiedUsers,
|
||||||
|
setVerified,
|
||||||
};
|
};
|
Loading…
Add table
Add a link
Reference in a new issue