diff --git a/lib/file-control.php b/lib/file-control.php
index 183b8ed..e3fc49c 100644
--- a/lib/file-control.php
+++ b/lib/file-control.php
@@ -4,7 +4,6 @@
// Establish the full file path reference
$file=strClean($_GET['file']);
if (isset($_GET['saveType'])) {$saveType = strClean($_GET['saveType']);};
-$docRoot = str_replace("\\","/",$ICEcoder['root']);
// Not done the first time we are on the save loop (ie, before the form posting reload)
if ($_GET['action']=="load"||$_GET['action']=="newFolder"||$_GET['action']=="rename"||$_GET['action']=="delete"||$_GET['action']=="perms"||isset($_POST['contents'])) {
@@ -28,10 +27,10 @@ if ($_GET['action']=="load") {
}
}
if ($_SESSION['userLevel'] == 10 || ($_SESSION['userLevel'] < 10 && $bannedFile==false)) {
+ if (strpos($file,$docRoot)===false) {$file=$docRoot.$iceRoot.$file;};
echo '';
+ echo "top.ICEcoder.shortURL = '".str_replace($docRoot,"",str_replace("|","/",$file))."';";
+ echo '';
$loadedFile = file_get_contents($file);
echo '","",$loadedFile).'';
} else {
@@ -41,22 +40,22 @@ if ($_GET['action']=="load") {
};
if ($fileType=="image") {
- echo '';
+ echo '';
};
};
// If we're due to add a new folder...
if ($_GET['action']=="newFolder") {
if ($_SESSION['userLevel'] > 0) {
- mkdir($docRoot.$file, 0707);
+ 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.$file)) {
- echo "";
+ if (!is_writable($docRoot.$iceRoot.$file)) {
+ echo "";
} else {
echo '';
}
@@ -66,13 +65,13 @@ if ($_GET['action']=="newFolder") {
// If we're due to rename a file...
if ($_GET['action']=="rename") {
- if ($_SESSION['userLevel'] > 0 && is_writable($_GET['oldFileName'])) {
- rename(strClean($_GET['oldFileName']),$docRoot.$file);
+ 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 '';
+ echo '';
} else {
if (!is_writable($_GET['oldFileName'])) {
echo "";
@@ -85,16 +84,16 @@ if ($_GET['action']=="rename") {
// If we're due to change permissions on a file/folder...
if ($_GET['action']=="perms") {
- if ($_SESSION['userLevel'] > 0 && is_writable($docRoot.$file)) {
- chmod($docRoot.$file,octdec(numClean($_GET['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($docRoot.$file)) {
- echo "";
+ if (!is_writable($file)) {
+ echo "";
} else {
echo '';
}
@@ -104,14 +103,15 @@ if ($_GET['action']=="perms") {
// 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($docRoot.$filesArray[$i])) {
- if (is_dir($docRoot.$filesArray[$i])) {
- rrmdir($docRoot.$filesArray[$i]);
+ if (is_writable($iceRoot.$filesArray[$i])) {
+ if (is_dir($iceRoot.$filesArray[$i])) {
+ rrmdir($iceRoot.$filesArray[$i]);
} else {
- unlink($docRoot.$filesArray[$i]);
+ unlink($iceRoot.$filesArray[$i]);
}
// Reload file manager
$fileName = substr($file,strrpos($file,"/")+1);
@@ -124,8 +124,8 @@ if ($_GET['action']=="delete") {
echo '';
}
} else {
- if (!is_writable($docRoot.$filesArray[$i])) {
- echo "";
+ if (!is_writable($iceRoot.$filesArray[$i])) {
+ echo "";
} else {
echo '';
}
@@ -155,7 +155,8 @@ if ($_GET['action']=="save") {
if (isset($_POST['newFileName'])&&$_POST['newFileName']!="") {
$file = strClean($_POST['newFileName']);
}
- $saveFile = $docRoot.$file;
+ $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']))) {
@@ -229,7 +230,7 @@ if (action=="load") {
// Finally, store all data, show tabs etc
top.ICEcoder.createNewTab();
top.ICEcoder.cMInstances.push(top.ICEcoder.nextcMInstance);
- top.ICEcoder.content.contentWindow.createNewCMInstance(top.ICEcoder.nextcMInstance);
+ window.onload=top.ICEcoder.content.contentWindow.createNewCMInstance(top.ICEcoder.nextcMInstance);
// Set the value & innerHTML of the code textarea to that of our loaded file plus make it visible (it's hidden on _coder's load)
top.ICEcoder.switchMode();
@@ -250,7 +251,7 @@ if (action=="load") {
if (fileType=="image") {
top.document.getElementById('blackMask').style.visibility = "visible";
- top.document.getElementById('mediaContainer').innerHTML = "
\" class=\"whiteGlow\" style=\"border: solid 10px #fff; max-width: 700px; max-height: 500px\" onClick=\"return false\">
";
+ top.document.getElementById('mediaContainer').innerHTML = "
\" class=\"whiteGlow\" style=\"border: solid 10px #fff; max-width: 700px; max-height: 500px\" onClick=\"return false\">
";
}
top.ICEcoder.serverMessage();