function wptouch_recursive_delete($source_dir)
{
    // Only allow a delete to occur for directories in the main WPtouch data directory
    if (strpos($source_dir, '..') !== false || strpos($source_dir, WPTOUCH_BASE_CONTENT_DIR) === false) {
        WPTOUCH_DEBUG(WPTOUCH_SECURITY, 'Not deleting directory ' . $source_dir . ' due to possibly security risk');
        return;
    }
    $src_dir = @opendir($source_dir);
    if ($src_dir) {
        while (($f = readdir($src_dir)) !== false) {
            if ($f == '.' || $f == '..') {
                continue;
            }
            $cur_file = $source_dir . '/' . $f;
            if (is_dir($cur_file)) {
                wptouch_recursive_delete($cur_file);
                @rmdir($cur_file);
            } else {
                @unlink($cur_file);
            }
        }
        closedir($src_dir);
        @rmdir($source_dir);
    }
}
 function recursive_delete($source_dir)
 {
     require_once WPTOUCH_DIR . '/core/file-operations.php';
     wptouch_recursive_delete($source_dir);
 }