Version 0.2.0 - PREVERSION - Ajout READ de l'explorateur
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:
53
bin/files.js
Normal file
53
bin/files.js
Normal file
@ -0,0 +1,53 @@
|
||||
const { LogType } = require("loguix")
|
||||
const fs = require("fs")
|
||||
const path = require("path")
|
||||
const { __glob } = require("./global-variables")
|
||||
const clog = new LogType("Fichier")
|
||||
const os = require("os");
|
||||
const uuid = require('uuid');
|
||||
var mime = require('mime-types');
|
||||
|
||||
module.exports.getFiles = function(root) {
|
||||
|
||||
var response = new Object()
|
||||
response.content = new Array()
|
||||
response.root = root
|
||||
response.parent = path.dirname(root)
|
||||
|
||||
|
||||
try{
|
||||
|
||||
if(root == "homepath") {
|
||||
|
||||
root = os.homedir()
|
||||
response.root = root
|
||||
|
||||
}
|
||||
|
||||
|
||||
if(!fs.existsSync(root)) {
|
||||
response.content = "NOT_EXIST"
|
||||
|
||||
} else {
|
||||
|
||||
for(var file of fs.readdirSync(root)) {
|
||||
|
||||
const stat = fs.statSync(root + path.sep + file)
|
||||
|
||||
response.content.push({"name":file, id: uuid.v4().toString() ,"fileDirectory" : root + path.sep + file , "type":mime.lookup(file), "size":stat.size, "lastedition":stat.mtimeMs, "directory":stat.isDirectory()})
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}catch(err) {
|
||||
|
||||
response.content = "NOT_PERMITTED"
|
||||
}
|
||||
|
||||
return response
|
||||
|
||||
}
|
@ -3,6 +3,7 @@ const fs = require("fs")
|
||||
const path = require("path")
|
||||
const { __glob } = require("./global-variables")
|
||||
const auth = require("./auth")
|
||||
const files = require("./files")
|
||||
const plog = new LogType("Web")
|
||||
const cook = require("cookie")
|
||||
const http = require("http")
|
||||
@ -39,7 +40,10 @@ module.exports.serverIO = function(server) {
|
||||
GetAnswer("USERINFO", {username: user.username, display_name: user.display_name ,picture: user.picture, permission: user.permission})
|
||||
})
|
||||
|
||||
|
||||
PostRequest("FX_GET", (root) => {
|
||||
|
||||
PostAnswer("FX_GET", files.getFiles(root))
|
||||
})
|
||||
|
||||
socket.on("disconnect", () => {
|
||||
|
||||
@ -48,7 +52,7 @@ module.exports.serverIO = function(server) {
|
||||
|
||||
function GetRequest(GQname, GQcallback) {
|
||||
socket.on("GET/" + GQname, () => {
|
||||
|
||||
|
||||
plog.log(user.username + " - Socket : " + socket.id + " - GET/" + GQname + " - [RECIEVED]")
|
||||
GQcallback()
|
||||
})
|
||||
@ -62,6 +66,21 @@ module.exports.serverIO = function(server) {
|
||||
|
||||
}
|
||||
|
||||
function PostRequest(GQname, GQcallback) {
|
||||
socket.on("POST/" + GQname, (value) => {
|
||||
plog.log(user.username + " - Socket : " + socket.id + " - POST/" + GQname + " - [RECIEVED]")
|
||||
GQcallback(value)
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
function PostAnswer(GRname, GRvalue) {
|
||||
|
||||
plog.log(user.username + " - Socket : " + socket.id + " - POST/" + GRname + " - [ANSWERED]")
|
||||
socket.emit("ANSWER/POST/" + GRname, GRvalue)
|
||||
|
||||
}
|
||||
|
||||
} else {
|
||||
|
||||
socket.disconnect()
|
||||
|
Reference in New Issue
Block a user