Version 0.4.0 - Ajout des metrics
All checks were successful
Neutral/pipeline/head This commit looks good

This commit is contained in:
Raphix
2023-11-28 21:05:44 +01:00
parent 04fcece8d4
commit b19243a8af
17 changed files with 1121 additions and 384 deletions

View File

@ -3,7 +3,9 @@ document.addEventListener("contextmenu", (e) => {
e.preventDefault()
})
function generateFileExplorerView() {
explorer.createWindow(() => {
var inCopyOrCut = null;
const View = new ViewWindow({
title: `<i class="fa fa-folder"></i> Gestionnaire de fichiers`,
@ -11,6 +13,15 @@ function generateFileExplorerView() {
height: "600px"
})
console.log("")
goHomePath()
function goHomePath() {
const rFiles = post("FX_GET", "homepath")
@ -53,6 +64,57 @@ function generateFileExplorerView() {
const home = getID(View.getViewTitle() + '_home')
const sharebtn = getID(View.getViewTitle() + '_sharebtn')
View.ViewWindowDiv.addEventListener("contextmenu", () => {
if(inCopyOrCut != null) {
const dMenu = new DroppableMenu()
dMenu.add("paste", "<i class='fa fa-paste'></i> Coller")
dMenu.show()
dMenu.get("paste").addEventListener("click", () => {
console.log({newPath: rootInput.value, action: inCopyOrCut.action, file: inCopyOrCut.file, name: inCopyOrCut.file.name, orginalPath: inCopyOrCut.orginalPath})
dMenu.hide()
const reqFiles = post("FX_PASTE", {newPath: rootInput.value, action: inCopyOrCut.action, file: inCopyOrCut.file, name: inCopyOrCut.file.name, orginalPath: inCopyOrCut.orginalPath})
reqFiles.then((result) => {
if(result == "OK") {
const reqFiles = post("FX_GET", rootInput.value)
reqFiles.then((result) => {
loadFiles(result)
})
} else if(result == "NOT_PERMITTED") {
const reqFiles = post("FX_GET", rootInput.value)
reqFiles.then((result) => {
loadFiles(result)
})
View.createPopup({
title: `<i class='fa fa-warning'></i> Erreur`,
content: `<p class='yellow'>Vous n'avez pas les permissions pour coller ce fichier.</p>`
})
} else {
const reqFiles = post("FX_GET", rootInput.value)
reqFiles.then((result) => {
loadFiles(result)
})
View.createPopup({
title: `<i class='fa fa-warning'></i> Erreur`,
content: `<p class='yellow'>Une erreur est survenue.</p>`
})
}
})
inCopyOrCut = null
})
} else {
console.log("LISTENER : " + rootInput.value)
}
})
home.addEventListener("click", () => {
goHomePath()
@ -77,7 +139,7 @@ function generateFileExplorerView() {
const foldername = getID(View.getViewTitle() + "_foldername")
const foldercreate = getID(View.getViewTitle() + "_foldercreate")
const folderInfo = new InfoPop(View.getViewTitle() + "_folderInfo")
const folderInfo = new TextResponse(View.getViewTitle() + "_folderInfo")
folderInfo.setSize("13px")
@ -137,7 +199,7 @@ function generateFileExplorerView() {
const filename = getID(View.getViewTitle() + "_filename")
const filecreate = getID(View.getViewTitle() + "_filecreate")
const fileupload = getID(View.getViewTitle() + "_fileupload")
const fileInfo = new InfoPop(View.getViewTitle() + "_fileInfo")
const fileInfo = new TextResponse(View.getViewTitle() + "_fileInfo")
fileInfo.setSize("13px")
@ -190,7 +252,7 @@ function generateFileExplorerView() {
const fileuploadInput = getID(View.getViewTitle() + "_fileuploadInput")
const fileuploadBtn = getID(View.getViewTitle() + "_fileuploadBtn")
const fileuploadInfo = new InfoPop(View.getViewTitle() + "_fileuploadInfo")
const fileuploadInfo = new TextResponse(View.getViewTitle() + "_fileuploadInfo")
fileuploadBtn.addEventListener("click", () => {
@ -324,9 +386,7 @@ function generateFileExplorerView() {
for(const file of files.content) {
const dropMenu = new DroppableMenu({
"id": file.id
})
const element = document.getElementById(file.id)
@ -347,18 +407,41 @@ function generateFileExplorerView() {
editFile()
})
dropMenu.add("edit", "<i class='fa-solid fa-pen'></i> Editer")
dropMenu.add("share", "<i class='fa fa-share'></i> Partager")
dropMenu.add("download", "<i class='fa fa-download'></i> Télécharger")
}
dropMenu.add("rename", "<i class='fa-solid fa-file-signature'></i> Renommer")
dropMenu.add("delete", "<i class='fa fa-trash'></i> Supprimer")
getID(file.id).addEventListener("contextmenu", () => {
const dropMenu = new DroppableMenu()
dropMenu.add("copy", "<i class='fa fa-copy'></i> Copier")
dropMenu.add("cut", "<i class='fa fa-cut'></i> Couper")
dropMenu.add("rename", "<i class='fa-solid fa-file-signature'></i> Renommer")
dropMenu.add("delete", "<i class='fa fa-trash'></i> Supprimer")
if(!file.directory) {
dropMenu.add("edit", "<i class='fa-solid fa-pen'></i> Editer")
dropMenu.add("share", "<i class='fa fa-share'></i> Partager")
dropMenu.add("download", "<i class='fa fa-download'></i> Télécharger")
}
dropMenu.show()
dropMenu.get("copy").addEventListener("click", () => {
dropMenu.hide()
inCopyOrCut = {"action": "copy", "file": file, "orginalPath": files.root}
})
dropMenu.get("cut").addEventListener("click", () => {
dropMenu.hide()
inCopyOrCut = {"action": "cut", "file": file, "orginalPath": files.root}
})
dropMenu.get("delete").addEventListener("click", () => {
dropMenu.hide()
const reqFiles = post("FX_DELETE", file.fileDirectory)
@ -403,7 +486,7 @@ function generateFileExplorerView() {
const rename = getID(View.getViewTitle() + "_rename")
const renameBtn = getID(View.getViewTitle() + "_renameBtn")
const renameInfo = new InfoPop(View.getViewTitle() + "_renameInfo")
const renameInfo = new TextResponse(View.getViewTitle() + "_renameInfo")
renameInfo.setSize("13px")
rename.value = file.name
rename.focus()
@ -465,7 +548,7 @@ function generateFileExplorerView() {
const sharelink = getID(View.getViewTitle() + "_sharelink")
const shareBtn = getID(View.getViewTitle() + "_shareBtn")
const shareInfo = new InfoPop(View.getViewTitle() + "_shareInfo")
const shareInfo = new TextResponse(View.getViewTitle() + "_shareInfo")
shareInfo.setSize("13px")
sharelink.value = result
sharelink.focus()
@ -583,10 +666,7 @@ function generateFileExplorerView() {
editorContent.style.resize = "none"
editorClose.addEventListener("click", () => {
editor.destroy()
})
}
@ -603,7 +683,7 @@ function generateFileExplorerView() {
}
})
function getIcon(file) {