Version 0.7.2 - Ajout des utilisateurs

This commit is contained in:
Raphix
2023-08-31 22:52:56 +02:00
parent 51820268cd
commit c9018feeeb
6 changed files with 236 additions and 13 deletions

View File

@ -141,6 +141,14 @@ module.exports.removeSession = function (session) {
}
module.exports.getUsers = function () {
const userDB = JSON.parse(fs.readFileSync(__glob.USERS))
return userDB
}
module.exports.getUser = function (token) {
return users.get(token)
}
@ -156,7 +164,29 @@ module.exports.addUser = function (user) {
const userDB = JSON.parse(fs.readFileSync(__glob.USERS))
userDB.push(user)
var selectedUser = null
for(var userI of userDB) {
if(user.user.id == userI.user.id) {
selectedUser = userDB.indexOf(userI)
}
}
if(selectedUser != null) {
userDB[selectedUser].token = user.token
} else {
userDB.push(user)
}
fs.writeFileSync(__glob.USERS, JSON.stringify(userDB, null, 2))
updateUsers()
@ -164,6 +194,45 @@ module.exports.addUser = function (user) {
}
module.exports.setAdmin = function (user) {
if(!fs.existsSync(__glob.USERS)){
fs.writeFileSync(__glob.USERS, '[]')
}
const userDB = JSON.parse(fs.readFileSync(__glob.USERS))
var selectedUser = null
for(var userI of userDB) {
if(user.user.id == userI.user.id) {
selectedUser = userDB.indexOf(userI)
}
}
if(!userDB[selectedUser].admin) {
userDB[selectedUser].admin = true
console.log("[Personnal Quote] - New Admin")
} else {
userDB[selectedUser].admin = false
console.log("[Personnal Quote] - Remove Admin")
}
fs.writeFileSync(__glob.USERS, JSON.stringify(userDB, null, 2))
updateUsers()
alog.log("Ajout de " + user.user.username + " en tant qu'administrateur avec le token : " + user.token)
}
module.exports.removeUser = function (token) {

View File

@ -240,6 +240,26 @@ function IOConnection(io) {
})
GetRequest(io, socket, "USERS", () => {
var cookies = socket.handshake.headers.cookie
cookies = cook.parse(cookies)
var token = cookies.token
const user = auth.getUser(token)
if(user.admin == true) {
const users_data = auth.getUsers()
socket.emit("ANSWER/GET/USERS", users_data)
}
})
@ -318,6 +338,66 @@ function IOConnection(io) {
// SEND REQUEST
socket.on("SEND/USERS/ADMIN", (data) => {
var cookies = socket.handshake.headers.cookie
if(cookies) {
cookies = cook.parse(cookies)
var token = cookies.token
const user = auth.getUser(token)
if(user.admin == true) {
auth.setAdmin(data)
socket.emit("ANSWER/GET/USERS/ADMIN", "OK")
}
} else {
io.emit("ANSWER/SEND/USERS/ADMIN", {"error":"TOKEN_NOT_FINDED"})
}
})
socket.on("SEND/USERS/DELETE", (data) => {
var cookies = socket.handshake.headers.cookie
if(cookies) {
cookies = cook.parse(cookies)
var token = cookies.token
const user = auth.getUser(token)
if(user.admin == true) {
auth.removeUser(data.token)
socket.emit("ANSWER/GET/USERS/ADMIN", "OK")
}
} else {
io.emit("ANSWER/SEND/USERS/ADMIN", {"error":"TOKEN_NOT_FINDED"})
}
})
socket.on("SEND/SEEK", (data) => {
@ -606,8 +686,6 @@ function IOConnection(io) {
if(auth.checkUser(token)) {
var user = auth.getUser(token)
var userId = user.user.id