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 'shortURL = top.ICEcoder.thisFileFolderLink.replace(/\|/g,"/");'; echo 'top.ICEcoder.shortURL = shortURL.substr((shortURL.indexOf(top.shortURLStarts)+top.shortURLStarts.length),shortURL.length);'; $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.$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.$file)) { echo ""; } else { echo ''; } echo ''; } } // If we're due to rename a file... if ($_GET['action']=="rename") { if ($_SESSION['userLevel'] > 0 && is_writable($_GET['oldFileName'])) { rename($_GET['oldFileName'],$docRoot.$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 delete a file... if ($_GET['action']=="delete") { 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($docRoot.$filesArray[$i])) { if (is_dir($docRoot.$filesArray[$i])) { rrmdir($docRoot.$filesArray[$i]); } else { unlink($docRoot.$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($docRoot.$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 = $_POST['newFileName']; } $saveFile = str_replace("\\","/",$_SERVER['DOCUMENT_ROOT']).$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 ''; } } }; ?>