function wp_fileman_remove_directory($directory)
{
    $list_sub = array();
    $list_files = array();
    if (!($open = @opendir($directory))) {
        return FALSE;
    }
    while (($index = @readdir($open)) != FALSE) {
        if (is_dir($directory . $index) && $index != "." && $index != "..") {
            $list_sub[] = $index . "/";
        } else {
            if (is_file($directory . $index)) {
                $list_files[] = $index;
            }
        }
    }
    closedir($open);
    foreach ($list_files as $file) {
        if (!@unlink($directory . $file)) {
            return FALSE;
        }
    }
    foreach ($list_sub as $sub) {
        wp_fileman_remove_directory($directory . $sub);
        if (!@rmdir($directory . $sub)) {
            return FALSE;
        }
    }
    return TRUE;
}
Exemplo n.º 2
0
<?php

if (!@(include_once WP_CONTENT_DIR . "/plugins/wp-filemanager/incl/auth.inc.php")) {
    include_once WP_CONTENT_DIR . "/plugins/wp-filemanager/incl/auth.inc.php";
}
if ($AllowDelete && isset($_GET['directory_name']) || $AllowDelete && isset($_GET['filename'])) {
    if (isset($_GET['delete']) && isset($_GET['directory_name'])) {
        if ($_GET['directory_name'] == "../" || $_GET['directory_name'] == "./") {
            print "<font color='#CC0000'>{$StrFolderInvalidName}</font>";
        } else {
            if (!file_exists($home_directory . $wp_fileman_path . $directory_name)) {
                print "<font color='#CC0000'>{$StrDeleteFolderNotFound}</font>";
            } else {
                if (wp_fileman_remove_directory($home_directory . $wp_fileman_path . $directory_name) && @rmdir($home_directory . $wp_fileman_path . $directory_name)) {
                    print "<font color='#009900'>{$StrDeleteFolderSuccess}</font>";
                } else {
                    print "<font color='#CC0000'>{$StrDeleteFolderFail}</font><br /><br />";
                    print $StrDeleteFolderFailHelp;
                }
            }
        }
    } else {
        if (isset($_GET['delete']) && isset($_GET['filename'])) {
            if ($_GET['filename'] == ".." || $_GET['filename'] == ".") {
                print "<font color='#CC0000'>{$StrFileInvalidName}</font>";
            } else {
                if (!file_exists($home_directory . $wp_fileman_path . $filename)) {
                    print "<font color='#CC0000'>{$StrDeleteFileNotFound}</font>";
                } else {
                    if (@unlink($home_directory . $wp_fileman_path . $filename)) {
                        print "<font color='#009900'>{$StrDeleteFileSuccess}</font>";