Implement Delete and Rename of File Component
	
		
			
	
		
	
	
		
	
		
			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:
		@@ -23,6 +23,10 @@
 | 
			
		||||
    </div>
 | 
			
		||||
</div>
 | 
			
		||||
 | 
			
		||||
<div id="fi_dialog_input">
 | 
			
		||||
 | 
			
		||||
</div>
 | 
			
		||||
 | 
			
		||||
<dialog class="fi_addfolder" id="fi_new_folder_dialog">
 | 
			
		||||
    <h1><i class="fa fa-folder"></i> Créer un dossier</h1>
 | 
			
		||||
        <p>Nom du dossier :</p>
 | 
			
		||||
@@ -33,15 +37,6 @@
 | 
			
		||||
    <button id="fi_add_confirm" class="fi_add_confirm">Ajouter</button>
 | 
			
		||||
</dialog>
 | 
			
		||||
 | 
			
		||||
<dialog class="fi_addfolder" id="_rename">
 | 
			
		||||
    <h1><i class="fa fa-terminal"></i> Renommer un fichier</h1>
 | 
			
		||||
        <p><span id="_old_name">/home/gitlab-ci/test</span></p>
 | 
			
		||||
        <p>Nouveau lien :</p>
 | 
			
		||||
        <input class="inp" id="_rename_name" type="text">
 | 
			
		||||
    </div>
 | 
			
		||||
    <button id="_rename_close" class="fi_add_close">Annuler</button>
 | 
			
		||||
    <button id="_rename_confirm" class="fi_add_confirm">Editer</button>
 | 
			
		||||
</dialog>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
    
 | 
			
		||||
@@ -59,6 +54,7 @@
 | 
			
		||||
        const newFolderConfirm = document.getElementById("fi_add_confirm")
 | 
			
		||||
        const newFolderName = document.getElementById("fi_add_name")
 | 
			
		||||
        const newFolderInfo = document.getElementById("fi_folder_info")
 | 
			
		||||
        const dialogInput = document.getElementById("fi_dialog_input")
 | 
			
		||||
        
 | 
			
		||||
 | 
			
		||||
        const newFolderClose = document.getElementById("fi_add_close")
 | 
			
		||||
@@ -175,6 +171,7 @@
 | 
			
		||||
            fiInfo.innerHTML = ""
 | 
			
		||||
 | 
			
		||||
            var fileExplorerList = new Array()
 | 
			
		||||
            var dialogExlorerList = new Array()
 | 
			
		||||
 | 
			
		||||
            fetch('/filemanager', {
 | 
			
		||||
                method: 'POST',
 | 
			
		||||
@@ -310,7 +307,7 @@
 | 
			
		||||
                                if(file.directory == true) {
 | 
			
		||||
 | 
			
		||||
                                    fileExplorerList.push('<div id="' + file.name + '_directory" class="fi_file row"> <p class="col-lg"><i style="color:yellow;" class="fa fa-folder"></i> ' + file.name + '</p> <p class="col-lg"><i class="fa fa-calendar"></i> Dernière édition : ' + lastedition + '</p> <p class="col-lg"><i class="fas fa-weight-hanging"></i> Taille : ' + file.size + ' octet(s)</p> <div class="col-lg fi_file_btn"> <button id="' + file.name + '_rename" class="fi_rename"><i id="' + file.name + '_trename" class="fas fa-terminal"></i></button> <button id="' + file.name + '_delete" class="fi_delete"><i id="' + file.name + '_tdelete" class="fa fa-trash"></i></button> </div> </div>')
 | 
			
		||||
 | 
			
		||||
                                    dialogExlorerList.push(' <dialog class="fi_addfolder" id="' + file.name + '_rename_dialog"> <h1><i class="fa fa-terminal"></i> Renommer un dossier</h1> <p><span id="' + file.name + '_old_name"></span></p> <p>Nouveau lien :</p> <input class="inp" id="' + file.name + '_rename_name" type="text"> </div><p id="' + file.name +'_rename_info" style="text-align: start; color: rgb(255, 48, 48);"></p> <button id="' + file.name + '_rename_close" class="fi_add_close">Annuler</button> <button id="' + file.name + '_rename_confirm" class="fi_add_confirm">Editer</button> </dialog>')
 | 
			
		||||
 | 
			
		||||
                                }
 | 
			
		||||
                                
 | 
			
		||||
@@ -419,12 +416,13 @@
 | 
			
		||||
 | 
			
		||||
                                                                        
 | 
			
		||||
                                    fileExplorerList.push('<div id="' + file.name + '_directory" class="fi_file row"> <p class="col-lg">' + icon+ '</i> ' + file.name + '</p> <p class="col-lg"><i class="fa fa-calendar"></i> Dernière édition : ' + lastedition + '</p> <p class="col-lg"><i class="fas fa-weight-hanging"></i> Taille : ' + file.size + ' octet(s)</p> <div class="col-lg fi_file_btn"> <button id="' + file.name + '_rename" class="fi_rename"><i id="' + file.name + '_trename" class="fas fa-terminal"></i></button>  <button id="' + file + '_download" class="fi_rename"><i id="' + file.name + '_tdownload" class="fas fa-download"></i></button><button id="' + file.name + '_delete" class="fi_delete"><i id="' + file.name + '_tdelete" class="fa fa-trash"></i></button> </div> </div>')
 | 
			
		||||
 | 
			
		||||
                                    dialogExlorerList.push(' <dialog class="fi_addfolder" id="' + file.name + '_rename_dialog"> <h1><i class="fa fa-terminal"></i> Renommer un fichier</h1> <p><span id="' + file.name + '_old_name"></span></p> <p>Nouveau lien :</p> <input class="inp" id="' + file.name + '_rename_name" type="text"> </div> <p id="' + file.name +'_rename_info" style="text-align: start; color: rgb(255, 48, 48);"></p><button id="' + file.name + '_rename_close" class="fi_add_close">Annuler</button> <button id="' + file.name + '_rename_confirm" class="fi_add_confirm">Editer</button> </dialog>')
 | 
			
		||||
                                }
 | 
			
		||||
                                
 | 
			
		||||
                            }
 | 
			
		||||
 | 
			
		||||
                            fileExplorer.innerHTML = fileExplorerList.join('')
 | 
			
		||||
                            dialogInput.innerHTML = dialogExlorerList.join('')
 | 
			
		||||
 | 
			
		||||
                            const last_dir = document.getElementById("last_directory")
 | 
			
		||||
 | 
			
		||||
@@ -465,9 +463,14 @@
 | 
			
		||||
 | 
			
		||||
                                const deleteBtn = document.getElementById(file.name + "_delete")
 | 
			
		||||
                                const renameBtn = document.getElementById(file.name + "_rename")
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                               
 | 
			
		||||
                                const renameDialog = document.getElementById(file.name + "_rename_dialog")
 | 
			
		||||
                                const renameOldName = document.getElementById(file.name + "_old_name")
 | 
			
		||||
                                const renameName = document.getElementById(file.name + "_rename_name")
 | 
			
		||||
                                const renameClose = document.getElementById(file.name + "_rename_close")
 | 
			
		||||
                                const renameConfirm = document.getElementById(file.name + "_rename_confirm")
 | 
			
		||||
                                const renameInfo = document.getElementById(file.name + "_rename_info")
 | 
			
		||||
                                
 | 
			
		||||
                    
 | 
			
		||||
 | 
			
		||||
                                if(file.directory == true) {
 | 
			
		||||
 | 
			
		||||
@@ -518,9 +521,13 @@
 | 
			
		||||
                                        body: JSON.stringify({"request":"del", "value": file})
 | 
			
		||||
                                    })
 | 
			
		||||
                                    .then(response => response.json())
 | 
			
		||||
                                    .then(response => res(response))
 | 
			
		||||
                                    .then(response => res(response, file))
 | 
			
		||||
 | 
			
		||||
                                    function res(response) {
 | 
			
		||||
                                   
 | 
			
		||||
 | 
			
		||||
                                    function res(response, file) {
 | 
			
		||||
 | 
			
		||||
                                        console.log(file)
 | 
			
		||||
 | 
			
		||||
                                        if(response.result == "failed") {
 | 
			
		||||
                                               
 | 
			
		||||
@@ -552,7 +559,82 @@
 | 
			
		||||
 | 
			
		||||
                                renameBtn.addEventListener("click", () => {
 | 
			
		||||
 | 
			
		||||
                                    console.log(file.name)
 | 
			
		||||
                                    renameDialog.showModal()
 | 
			
		||||
                                    renameOldName.innerHTML = file.fileDirectory
 | 
			
		||||
                                    renameName.value = file.fileDirectory
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                                })
 | 
			
		||||
 | 
			
		||||
                                renameClose.addEventListener("click" ,() => {
 | 
			
		||||
                                    renameDialog.close()
 | 
			
		||||
                                    getDirectory(currentDir.value)
 | 
			
		||||
 | 
			
		||||
                                })
 | 
			
		||||
 | 
			
		||||
                                renameConfirm.addEventListener("click" ,() => {
 | 
			
		||||
                                    var rnjustspace = false
 | 
			
		||||
                                    renameInfo.innerHTML = ""
 | 
			
		||||
 | 
			
		||||
                                    for (var i = 0; i < renameName.value.length; i++) {
 | 
			
		||||
                                        var char = renameName.value.charAt(i)
 | 
			
		||||
 | 
			
		||||
                                        if(char != " ") {
 | 
			
		||||
 | 
			
		||||
                                            rnjustspace = true
 | 
			
		||||
                                        }
 | 
			
		||||
                                
 | 
			
		||||
                                    }
 | 
			
		||||
 | 
			
		||||
                                    
 | 
			
		||||
                                    
 | 
			
		||||
                                    if(rnjustspace == false) {
 | 
			
		||||
 | 
			
		||||
                                        renameInfo.innerHTML = "Le nom du dossier ne peut être vide !"
 | 
			
		||||
                                    
 | 
			
		||||
                                    } else {
 | 
			
		||||
                                  
 | 
			
		||||
                                
 | 
			
		||||
                                        fetch('/filemanager', {
 | 
			
		||||
                                            method: 'POST',
 | 
			
		||||
                                            redirect: 'follow',
 | 
			
		||||
                                            headers: {
 | 
			
		||||
                                                'Accept': 'application/json',
 | 
			
		||||
                                                'Content-Type': 'application/json'
 | 
			
		||||
                                            },
 | 
			
		||||
                                            body: JSON.stringify({"request":"rename", "value": renameName.value, "currentDir" : renameOldName.outerText})
 | 
			
		||||
                                        })
 | 
			
		||||
                                        .then(response => response.json())
 | 
			
		||||
                                        .then(response => res(response))
 | 
			
		||||
 | 
			
		||||
                                        function res(response) {
 | 
			
		||||
                                            if(response.result == "failed") {
 | 
			
		||||
                                                content.innerHTML = ' <h1 style="color:red;"><i style="color:yellow; font-size: 2vw;" class="fa fa-warning"></i>  Erreur de chargement des données - Erreur : ' + response.content  + '</h1>'
 | 
			
		||||
                                                console.log("FAILED")
 | 
			
		||||
                                                
 | 
			
		||||
                                            } else if(response.result == "success") {
 | 
			
		||||
 | 
			
		||||
                                                if(response.content == "ERROR_ALREADY_EXIST") {
 | 
			
		||||
                                                    renameInfo.innerHTML = "<p>Le nom du dossier est déjà existant !</p>"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                                                } else if(response.content == "ERROR_NOT_MAKEABLE") {
 | 
			
		||||
                                                    renameInfo.innerHTML = "<p>Vous n'avez pas la permission !</p>"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                                                } else {
 | 
			
		||||
 | 
			
		||||
                                                    renameDialog.close()
 | 
			
		||||
                                                    getDirectory(currentDir.value)
 | 
			
		||||
                                                }
 | 
			
		||||
                                                    
 | 
			
		||||
                                            }
 | 
			
		||||
 | 
			
		||||
                                        }
 | 
			
		||||
 | 
			
		||||
                                }
 | 
			
		||||
                                    
 | 
			
		||||
                             
 | 
			
		||||
                                })
 | 
			
		||||
                            } 
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user