action="load";'; // Determine what to do based on filename // Everything is opened as text in the editor unless specified otherwise $fileType="text"; if (strpos($file,".jpg")>0||strpos($file,".jpeg")>0||strpos($file,".gif")>0||strpos($file,".png")>0) {$fileType="image";}; if ($fileType=="text") { $bannedFile=false; for ($i=0;$ifileType="text";top.ICEcoder.rightClickedFile=top.ICEcoder.thisFileFolderLink=\''.$file.'\';'; echo "top.ICEcoder.shortURL = '".str_replace($docRoot,"",str_replace("|","/",$file))."';"; echo ''; $loadedFile = file_get_contents($file); echo '","",$loadedFile).''; } else { echo ''; echo ''; } }; if ($fileType=="image") { echo ''; }; }; // If we're due to add a new folder... if ($_GET['action']=="newFolder") { if ($_SESSION['userLevel'] > 0) { mkdir($docRoot.$iceRoot.$file, 0707); // Reload file manager $fileName = substr($file,strrpos($file,"/")+1); $fileLoc = substr($file,0,strrpos($file,"/")); if ($fileLoc=="") {$fileLoc = "/";}; echo ''; } else { if (!is_writable($docRoot.$iceRoot.$file)) { echo ""; } else { echo ''; } echo ''; } } // If we're due to rename a file... if ($_GET['action']=="rename") { if ($_SESSION['userLevel'] > 0 && is_writable($docRoot.$iceRoot.str_replace("|","/",$_GET['oldFileName']))) { rename($docRoot.$iceRoot.str_replace("|","/",strClean($_GET['oldFileName'])),$docRoot.$iceRoot.str_replace("|","/",$file)); // Reload file manager $fileName = substr($file,strrpos($file,"/")+1); $fileLoc = substr($file,0,strrpos($file,"/")); if ($fileLoc=="") {$fileLoc = "/";}; echo ''; } else { if (!is_writable($_GET['oldFileName'])) { echo ""; } else { echo ''; } echo ''; } } // If we're due to change permissions on a file/folder... if ($_GET['action']=="perms") { if ($_SESSION['userLevel'] > 0 && is_writable($file)) { chmod($file,octdec(numClean($_GET['perms']))); // Reload file manager $fileName = substr($file,strrpos($file,"/")+1); $fileLoc = substr($file,0,strrpos($file,"/")); if ($fileLoc=="") {$fileLoc = "/";}; echo ''; } else { if (!is_writable($file)) { echo ""; } else { echo ''; } echo ''; } } // If we're due to delete a file... if ($_GET['action']=="delete") { if (strpos($file,$docRoot)===false) {$file=$docRoot.$iceRoot.$file;}; if ($_SESSION['userLevel'] > 0) { $filesArray = split(";",$file); // May contain more than one file here for ($i=0;$i<=count($filesArray)-1;$i++) { if (is_writable($iceRoot.$filesArray[$i])) { if (is_dir($iceRoot.$filesArray[$i])) { rrmdir($iceRoot.$filesArray[$i]); } else { unlink($iceRoot.$filesArray[$i]); } // Reload file manager $fileName = substr($file,strrpos($file,"/")+1); $fileLoc = substr($file,0,strrpos($file,"/")); if ($fileLoc=="") {$fileLoc = "/";}; echo ''; } else { echo ""; } echo ''; } } else { if (!is_writable($iceRoot.$filesArray[$i])) { echo ""; } else { echo ''; } echo ''; } } // The function to recursively remove folders & files function rrmdir($dir) { if (is_dir($dir)) { $objects = scandir($dir); foreach ($objects as $object) { if ($object != "." && $object != "..") { if (filetype($dir."/".$object) == "dir") rrmdir($dir."/".$object); else unlink($dir."/".$object); } } reset($objects); rmdir($dir); } } if ($_GET['action']=="save") { echo ''; // on the form posting via a reload, save the file if (isset($_POST['contents'])) { if ($_SESSION['userLevel'] > 0) { if (isset($_POST['newFileName'])&&$_POST['newFileName']!="") { $file = strClean($_POST['newFileName']); } $saveFile = $iceRoot.$file; if (strpos($saveFile,$docRoot)===false) {$saveFile=$docRoot.$iceRoot.$file;}; $saveFile = str_replace("//","/",$saveFile); if ((file_exists($saveFile) && is_writable($saveFile)) || $_POST['newFileName']!="") { if (filemtime($saveFile)==$_GET['fileMDT']||!(isset($_GET['fileMDT']))) { $fh = fopen($saveFile, 'w') or die("Sorry, cannot save"); fwrite($fh, $_POST['contents']); fclose($fh); clearstatcache(); echo ''; if (isset($_POST['newFileName'])&&$_POST['newFileName']!="") { // Reload file manager & stop CTRL+s being sticky $fileName = substr($file,strrpos($file,"/")+1); $fileLoc = substr($file,0,strrpos($file,"/")); if ($fileLoc=="") {$fileLoc = "/";}; echo ''; } if (isset($_POST['newFileName'])&&$_POST['newFileName']!="") { echo ''; } echo ''; } else { $loadedFile = file_get_contents($saveFile); echo '","",$loadedFile).''; echo ''; ?> top.ICEcoder.serverMessage();top.ICEcoder.serverQueue("del",0);action="nothing";'; } } else { echo ""; echo ''; } } else { if (!is_writable($saveFile)) { echo ""; } else { echo ''; } echo ''; } } }; ?>