예제 #1
0
파일: webdav.php 프로젝트: hky/bytehoard
 function MKCOL(&$options)
 {
     global $bhsession;
     $filepath = bh_fpclean($options['path']);
     $infolder = bh_get_parent($filepath);
     if (bh_checkrights(bh_fpclean($infolder), $bhsession['username']) >= 2) {
         bh_mkdir($filepath);
         $fileobj = new bhfile($filepath);
         unset($fileobj);
         return "201 Created";
     } else {
         return "403 Forbidden";
     }
 }
예제 #2
0
if (empty($infolder)) {
    $infolder = $_GET['infolder'];
}
if (empty($infolder)) {
    $infolder = $_POST['infolder'];
}
if (empty($infolder)) {
    $infolder = $_SESSION['lastdir'];
}
if (empty($infolder)) {
    $infolder = $bhcurrent['userobj']->homedir;
}
if (!empty($_POST['foldername'])) {
    # Check they have permission to write in the folder
    if (bh_checkrights(bh_fpclean($infolder), $bhsession['username']) >= 2) {
        bh_mkdir(bh_fpclean($infolder . "/" . $_POST['foldername']));
        $fileobj = new bhfile(bh_fpclean($infolder . "/" . $_POST['foldername']));
        unset($fileobj);
        bh_log($bhlang['notice:folder_created'], "BH_NOTICE");
        bh_log(str_replace("#USER#", $bhsession['username'], str_replace("#FOLDER#", bh_fpclean($infolder . "/" . $_POST['foldername']), $bhlang['log:#USER#_created_#FOLDER#'])), "BH_FOLDER_CREATED");
        $_GET['filepath'] = bh_fpclean($infolder . "/" . $_POST['foldername']);
        require "modules/viewdir.inc.php";
    } else {
        bh_log($bhlang['error:access_denied'], "BH_ERROR");
        bh_log(str_replace("#USER#", $bhsession['username'], str_replace("#PAGE#", $_SERVER['REQUEST_URI'], $bhlang['log:#USER#_denied_#PAGE#'])), "BH_ACCESS_DENIED");
        require "modules/error.inc.php";
    }
} else {
    # Open layout object
    $layoutobj = new bhlayout("addfolderform");
    $layoutobj->filepath = $infolder;
예제 #3
0
function bh_trash($absfilepath)
{
    global $bhconfig;
    if (!bh_file_exists(bh_fpclean("/trash"))) {
        bh_mkdir(bh_fpclean("/trash"), 0777);
    }
    if (defined("BH_ROOT")) {
        rename($absfilepath, $bhconfig['fileroot'] . bh_fpclean("/trash") . "/" . bh_get_filename($absfilepath));
        chmod($bhconfig['fileroot'] . bh_fpclean("/trash") . "/" . bh_get_filename($absfilepath), 0777);
    } else {
        rename($absfilepath, $bhconfig['fileroot'] . bh_fpclean("/trash") . "/" . bh_get_filename($absfilepath));
        chmod($bhconfig['fileroot'] . bh_fpclean("/trash") . "/" . bh_get_filename($absfilepath), 0777);
    }
}
예제 #4
0
function bh_trash($absfilepath)
{
    global $bhconfig;
    if (!bh_file_exists(bh_fpclean("/trash"))) {
        bh_mkdir(bh_fpclean("/trash"));
    }
    rename($absfilepath, $bhconfig['fileroot'] . bh_fpclean("/trash") . "/" . bh_get_filename($absfilepath));
}