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; }
<?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>";