mejora en la apriencia del cloud.
This commit is contained in:
@@ -2,21 +2,25 @@ const controlador = {};
|
||||
//const dirPath = "/home/pablinux/Projects/Node/APP-SIGMA-WEB/src/public/files/";
|
||||
//const var_locals = ;
|
||||
//********* APP-panel control ********//
|
||||
const path = require('path');
|
||||
controlador.upload = (req, res) => {
|
||||
if (!req.files || Object.keys(req.files).lenght === 0) {
|
||||
return res.status(400).send({ message: 'archivos no cargados' });
|
||||
if (!req.files || Object.keys(req.files).length === 0) {
|
||||
return res.status(400).json({ status: 'error', message: 'Archivos no cargados' });
|
||||
} else {
|
||||
const file = req.files.file_toUpload;
|
||||
const path = req.app.locals.dir.path_dir + '/public/files/' + file.name;
|
||||
console.log(path);
|
||||
file.mv(path, (err) => {
|
||||
const destinationPath = path.join(req.app.locals.dir.path_dir, file.name);
|
||||
|
||||
file.mv(destinationPath, (err) => {
|
||||
if (err) {
|
||||
return res.status(500).send(err);
|
||||
console.error("Error al mover el archivo:", err);
|
||||
return res.status(500).json({ status: 'error', message: 'Error al subir el archivo', error: err.message });
|
||||
}
|
||||
return res.send({ status: "success", path: path });
|
||||
// *** Mantener la respuesta JSON ***
|
||||
return res.json({ status: "success", message: `Archivo '${file.name}' subido exitosamente.` });
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
controlador.upload_video = (req, res) => {
|
||||
if (!req.files || Object.keys(req.files).lenght === 0) {
|
||||
return res.status(400).send({ message: 'archivos no cargados' });
|
||||
@@ -34,18 +38,16 @@ controlador.upload_video = (req, res) => {
|
||||
};
|
||||
|
||||
//ruta actual
|
||||
const procesarPath = (path) => {
|
||||
return path ? path.replace(/-/g, '/') : '/';
|
||||
}
|
||||
|
||||
const fs = require('fs');
|
||||
const fs = require('fs'); // Asegúrate de que esta línea esté al principio del archivo si no lo está
|
||||
function leer_dir(dir) {
|
||||
var json = [];
|
||||
var files = fs.readdirSync(dir + '/public/files/', { withFileTypes: true });
|
||||
// ¡CORRECCIÓN AQUÍ! Usa 'dir' directamente, sin añadir '/public/files/'
|
||||
var files = fs.readdirSync(dir, { withFileTypes: true });
|
||||
|
||||
files.forEach(function (arch, idx) {
|
||||
json.push({ "indice": idx, "archivo": arch.name, "link": "files/" + arch });
|
||||
//console.log(arch.name);
|
||||
//console.log(req);
|
||||
// Si el link para la interfaz web debe ser relativo a 'files/', esto es correcto.
|
||||
json.push({ "indice": idx, "archivo": arch.name, "link": "files/" + arch.name });
|
||||
// Nota: 'arch' es un objeto dirent, necesitas 'arch.name' para el nombre del archivo.
|
||||
});
|
||||
return json;
|
||||
}
|
||||
@@ -69,8 +71,8 @@ controlador.cloud_panel = (req, res, next) => {
|
||||
} else {
|
||||
try {
|
||||
if (rows.length > 0) {
|
||||
let dir = procesarPath(req.params.path);
|
||||
console.log(req.app.locals.dir);
|
||||
//let dir = procesarPath(req.params.path);
|
||||
//console.log(req.app.locals.dir);
|
||||
var files = leer_dir(req.app.locals.dir.path_dir);
|
||||
res.render('cloud', {
|
||||
data: files
|
||||
@@ -83,7 +85,7 @@ controlador.cloud_panel = (req, res, next) => {
|
||||
}
|
||||
} catch (e) {
|
||||
res.render('login_cloud',{msg:e.toString()});
|
||||
//next(e);
|
||||
next(e);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user