From dff7573531cb68490c1fa3265eaa4c02d5c1bb7c Mon Sep 17 00:00:00 2001 From: Matt Pass Date: Thu, 19 Apr 2012 17:43:41 +0100 Subject: [PATCH] Theme can now be chosen, right click menu now dynamic & reload FM Updates to allow usage of theme as chosen by user Menu that displays when user click is now more dynamic (Shows options based on number of files selected) Function to reload File Manager on demand plus show loading screen --- lib/coder.js | 40 ++++++++++++++++++++++++++++++++-------- 1 file changed, 32 insertions(+), 8 deletions(-) diff --git a/lib/coder.js b/lib/coder.js index efaf474..9387e98 100644 --- a/lib/coder.js +++ b/lib/coder.js @@ -333,9 +333,9 @@ var ICEcoder = { // Set all cM instances to be hidden, then make our selected instance visable for (var i=0;i 0 ? top.ICEcoder.fMIconVis('fMDelete',1) : top.ICEcoder.fMIconVis('fMDelete',0.3); top.ICEcoder.selectedFiles.length == 1 ? top.ICEcoder.fMIconVis('fMRename',1) : top.ICEcoder.fMIconVis('fMRename',0.3); + // Hide the file menu incase it's showing + top.document.getElementById('fileMenu').style.display = "none"; }, // Select or deselect file @@ -786,12 +787,21 @@ var ICEcoder = { // Show menu on right clicking in file manager showMenu: function() { - var menuType, folderMenuItems; + var menuType, folderMenuItems, foundFile; + + if (top.ICEcoder.selectedFiles.length == 0) {top.ICEcoder.selectFileFolder()}; + + foundFile=false; + for (var i=0;i<=top.ICEcoder.selectedFiles.length-1;i++) { + if (top.ICEcoder.rightClickedFile.replace(fullPath,"")==top.ICEcoder.selectedFiles[i].replace(/\|/g,"/")) {foundFile=true}; + } + if (!foundFile) {top.ICEcoder.selectFileFolder()}; if ("undefined" != typeof top.ICEcoder.thisFileFolderLink && top.ICEcoder.thisFileFolderLink!="") { top.ICEcoder.selectedFiles[0].indexOf(".")>0 ? menuType = "file" : menuType = "folder"; folderMenuItems = top.document.getElementById('folderMenuItems'); - menuType == "folder" ? folderMenuItems.style.display = "block" : folderMenuItems.style.display = "none"; + menuType == "folder" && top.ICEcoder.selectedFiles.length == 1 ? folderMenuItems.style.display = "block" : folderMenuItems.style.display = "none"; + top.ICEcoder.selectedFiles.length > 1 ? singleFileMenuItems.style.display = "none" : singleFileMenuItems.style.display = "block"; document.getElementById('fileMenu').style.display = "inline-block"; document.getElementById('fileMenu').style.left = (top.ICEcoder.mouseX+20) + "px"; document.getElementById('fileMenu').style.top = (top.ICEcoder.mouseY-top.document.getElementById('filesFrame').contentWindow.document.body.scrollTop+80) + "px"; @@ -1234,10 +1244,13 @@ var ICEcoder = { } if (action=="newFile") {top.ICEcoder.newFile();} if (action=="newFolder") {top.ICEcoder.newFolder();} - if (action=="delete") {top.ICEcoder.deleteFile(top.ICEcoder.rightClickedFile);} if (action=="rename") {top.ICEcoder.renameFile(top.ICEcoder.rightClickedFile);} } + if (action=="delete" && ICEcoder.selectedFiles.length>0) { + top.ICEcoder.deleteFile(); + } + if (action=="view" && ICEcoder.openFiles.length>0) { window.open(top.ICEcoder.openFiles[top.ICEcoder.selectedTab-1]); } @@ -1347,5 +1360,16 @@ var ICEcoder = { top.ICEcoder.thisFileFolderType='file'; top.ICEcoder.openFile(); } + }, + + // Refresh file manager on demand + refreshFileManager: function() { + top.document.getElementById('loadingMask').style.visibility = "visible"; + top.ICEcoder.filesFrame.src="files.php"; + top.ICEcoder.filesFrame.style.opacity="0"; + top.ICEcoder.filesFrame.onload = function() { + top.ICEcoder.filesFrame.style.opacity="1"; + top.document.getElementById('loadingMask').style.visibility = "hidden"; + } } }; \ No newline at end of file