diff --git a/lib/file-control.php b/lib/file-control.php index ae7a618..0372d0c 100644 --- a/lib/file-control.php +++ b/lib/file-control.php @@ -7,7 +7,7 @@ if (isset($_GET['saveType'])) {$saveType = strClean($_GET['saveType']);}; $docRoot = str_replace("\\","/",$_SERVER['DOCUMENT_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"||isset($_POST['contents'])) { +if ($_GET['action']=="load"||$_GET['action']=="newFolder"||$_GET['action']=="rename"||$_GET['action']=="delete"||$_GET['action']=="perms"||isset($_POST['contents'])) { $file= str_replace("|","/",$file); } @@ -82,6 +82,25 @@ 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']))); + // 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 delete a file... if ($_GET['action']=="delete") { if ($_SESSION['userLevel'] > 0) {