Version 0.6.0 - Ajout des utilisateurs et des paramètres V1
All checks were successful
Neutral/pipeline/head This commit looks good
All checks were successful
Neutral/pipeline/head This commit looks good
This commit is contained in:
@ -3,7 +3,9 @@ const fs = require("fs")
|
||||
const path = require("path")
|
||||
const { __glob } = require("./global-variables.js")
|
||||
const auth = require("./auth.js")
|
||||
const users = require("./users.js")
|
||||
const files = require("./files.js")
|
||||
const config = require("./config.js")
|
||||
const links = require("./links.js")
|
||||
const service = require("./services.js")
|
||||
const pipeline = require("./pipelines.js")
|
||||
@ -11,6 +13,7 @@ const plog = new LogType("Web")
|
||||
const cook = require("cookie")
|
||||
const http = require("http")
|
||||
const servermetrics = require("./server-metrics.js")
|
||||
const pm2 = require('pm2');
|
||||
|
||||
/**
|
||||
* NOTE INTERNE
|
||||
@ -25,11 +28,16 @@ const servermetrics = require("./server-metrics.js")
|
||||
|
||||
module.exports.serverIO = function(server) {
|
||||
|
||||
const io = require('socket.io')(server)
|
||||
const io = require('socket.io')(server, {
|
||||
maxHttpBufferSize: 1e8,
|
||||
pingTimeout: 60000
|
||||
})
|
||||
|
||||
|
||||
io.on("connection", (socket) => {
|
||||
|
||||
let token = cook.parse(socket.handshake.headers.cookie).token
|
||||
const user = auth.getUserByToken(token)
|
||||
var user = auth.getUserByToken(token)
|
||||
|
||||
if(user) {
|
||||
plog.log("Connexion au panel par '" + user.username + "' avec le socket : " + socket.id)
|
||||
@ -40,7 +48,7 @@ module.exports.serverIO = function(server) {
|
||||
|
||||
// Get Users
|
||||
GetRequest("USERINFO", () => {
|
||||
|
||||
user = auth.getUserByToken(token)
|
||||
GetAnswer("USERINFO", {username: user.username, display_name: user.display_name ,picture: user.picture, permission: user.permission})
|
||||
})
|
||||
|
||||
@ -163,11 +171,57 @@ module.exports.serverIO = function(server) {
|
||||
|
||||
}
|
||||
|
||||
socket.on("disconnect", () => {
|
||||
if(user.checkPermission("USERS")) {
|
||||
GetRequest("US_ALL", async () => {
|
||||
GetAnswer("US_ALL", await users.getAllUsers())
|
||||
})
|
||||
|
||||
PostRequest("US_ADD", async (settings) => {
|
||||
PostAnswer("US_ADD", await users.addUser(settings))
|
||||
})
|
||||
|
||||
PostRequest("US_DELETE", async (settings) => {
|
||||
PostAnswer("US_DELETE", await users.deleteUser(settings))
|
||||
})
|
||||
|
||||
PostRequest("US_EDIT", async (settings) => {
|
||||
PostAnswer("US_EDIT", await users.editUser(settings))
|
||||
})
|
||||
}
|
||||
|
||||
if(user.checkPermission("SETTINGS")) {
|
||||
PostRequest("SETTINGS_SAVE", async (settings) => {
|
||||
PostAnswer("SETTINGS_SAVE", await config.saveSettings(settings))
|
||||
})
|
||||
PostRequest("SERVER_RESTART", async () => {
|
||||
pm2.restart('Neutral')
|
||||
})
|
||||
PostRequest("SERVER_STOP", async () => {
|
||||
pm2.stop('Neutral')
|
||||
})
|
||||
GetRequest("SERVER_GET_LOGS", async () => {
|
||||
GetAnswer("SERVER_GET_LOGS", await fs.readdirSync(__glob.LOGS))
|
||||
})
|
||||
|
||||
PostRequest("SERVER_READ_LOG", async (logs) => {
|
||||
PostAnswer("SERVER_READ_LOG", await fs.readFileSync(__glob.LOGS + path.sep + logs).toString())
|
||||
})
|
||||
|
||||
GetRequest("SETTINGS_GET", async () => {
|
||||
GetAnswer("SETTINGS_GET", await config.getSettings())
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
socket.on("disconnect", (reason) => {
|
||||
plog.log("Déconnexion du panel par '" + user.username + "' avec le socket : " + socket.id)
|
||||
})
|
||||
|
||||
socket.on("connect_error", (err) => {
|
||||
console.log(err)
|
||||
console.log(err.message); // prints the message associated with the error
|
||||
});
|
||||
|
||||
function GetRequest(GQname, GQcallback) {
|
||||
socket.on("GET/" + GQname, () => {
|
||||
|
||||
|
Reference in New Issue
Block a user