wp_nonce_field('bp-docs-delete-folder-' . $folder_to_delete->ID);
        ?>
		</p>

		</form>
	<?php 
    }
    ?>


<?php 
} else {
    ?>

<?php 
    $folders = bp_docs_get_folders(array('display' => 'flat', 'parent_id' => null));
    $walker = new BP_Docs_Folder_Manage_Walker();
    ?>

<?php 
    $f = $walker->walk($folders, 10, array('foo' => 'bar'));
    ?>

<h3><?php 
    _e('Manage Existing Folders', 'bp-docs');
    ?>
</h3>
<ul class="docs-folder-manage">
	<?php 
    echo $f;
    ?>
 /**
  * @group bp_docs_delete_folder_contents
  */
 public function test_bp_docs_delete_folder_contents()
 {
     $f1 = bp_docs_create_folder(array('name' => 'foo'));
     $f1_d1 = $this->factory->doc->create();
     $f1_d2 = $this->factory->doc->create();
     bp_docs_add_doc_to_folder($f1_d1, $f1);
     bp_docs_add_doc_to_folder($f1_d2, $f1);
     $f2 = bp_docs_create_folder(array('name' => 'foo', 'parent' => $f1));
     $f2_d1 = $this->factory->doc->create();
     $f2_d2 = $this->factory->doc->create();
     bp_docs_add_doc_to_folder($f2_d1, $f2);
     bp_docs_add_doc_to_folder($f2_d2, $f2);
     $f3 = bp_docs_create_folder(array('name' => 'foo', 'parent' => $f1));
     $f3_d1 = $this->factory->doc->create();
     $f3_d2 = $this->factory->doc->create();
     bp_docs_add_doc_to_folder($f3_d1, $f3);
     bp_docs_add_doc_to_folder($f3_d2, $f3);
     $f4 = bp_docs_create_folder(array('name' => 'foo', 'parent' => $f2));
     $f4_d1 = $this->factory->doc->create();
     $f4_d2 = $this->factory->doc->create();
     bp_docs_add_doc_to_folder($f4_d1, $f4);
     bp_docs_add_doc_to_folder($f4_d2, $f4);
     $this->assertTrue(bp_docs_delete_folder_contents($f1));
     $f1_term = bp_docs_get_folder_term($f1);
     $f1_docs = get_posts(array('post_type' => bp_docs_get_post_type_name(), 'tax_query' => array(array('taxonomy' => 'bp_docs_doc_in_folder', 'field' => 'term_id', 'terms' => $f1_term)), 'update_meta_cache' => false, 'update_term_cache' => false));
     $this->assertSame(array(), $f1_docs);
     $f2_term = bp_docs_get_folder_term($f2);
     $f2_docs = get_posts(array('post_type' => bp_docs_get_post_type_name(), 'tax_query' => array(array('taxonomy' => 'bp_docs_doc_in_folder', 'field' => 'term_id', 'terms' => $f2_term)), 'update_meta_cache' => false, 'update_term_cache' => false));
     $this->assertSame(array(), $f2_docs);
     $f3_term = bp_docs_get_folder_term($f3);
     $f3_docs = get_posts(array('post_type' => bp_docs_get_post_type_name(), 'tax_query' => array(array('taxonomy' => 'bp_docs_doc_in_folder', 'field' => 'term_id', 'terms' => $f3_term)), 'update_meta_cache' => false, 'update_term_cache' => false));
     $this->assertSame(array(), $f3_docs);
     $f4_term = bp_docs_get_folder_term($f4);
     $f4_docs = get_posts(array('post_type' => bp_docs_get_post_type_name(), 'tax_query' => array(array('taxonomy' => 'bp_docs_doc_in_folder', 'field' => 'term_id', 'terms' => $f4_term)), 'update_meta_cache' => false, 'update_term_cache' => false));
     $this->assertSame(array(), $f4_docs);
     $this->assertSame(array(), bp_docs_get_folders(array('parent_id' => $f1)));
     $this->assertSame(array(), bp_docs_get_folders(array('parent_id' => $f2)));
 }
/**
 * Fetch <select> box for folder selection.
 *
 * @since 1.9
 *
 * @param array $args {
 *     Array of optional arguments.
 *     @type int $group_id Include folders of a given group.
 *     @type int $user_id Include folders of a given user.
 *     @type int $selected ID of the selected folder.
 * }
 * @return string
 */
function bp_docs_folder_selector($args = array())
{
    $defaults = array('name' => 'bp-docs-folder', 'id' => 'bp-docs-folder', 'class' => '', 'group_id' => null, 'user_id' => null, 'selected' => null, 'doc_id' => null, 'force_global' => false, 'echo' => true);
    if (function_exists('bp_parse_args')) {
        $r = bp_parse_args($args, $defaults, 'bp_docs_folder_selector');
    } else {
        $r = wp_parse_args($args, $defaults);
    }
    // If no manual 'selected' value is passed, try to infer it from the
    // current context
    if (is_null($r['selected'])) {
        if (!is_null($r['doc_id'])) {
            $doc_id = intval($r['doc_id']);
        } else {
            $maybe_doc = get_queried_object();
            if (isset($maybe_doc->post_type) && bp_docs_get_post_type_name() === $maybe_doc->post_type) {
                $doc_id = $maybe_doc->ID;
            }
        }
        if (!empty($doc_id)) {
            $maybe_folders = wp_get_object_terms($doc_id, array('bp_docs_doc_in_folder'));
            // Take the first one
            if (!empty($maybe_folders)) {
                $r['selected'] = substr($maybe_folders[0]->slug, 22);
            }
        }
    }
    $types = array();
    // Include Global folders either when force_global is true or there
    // are no others to show
    if ($r['force_global'] || empty($r['group_id']) && empty($r['user_id'])) {
        $types['global'] = array('label' => __('Global', 'bp-docs'), 'folders' => bp_docs_get_folders(array('display' => 'flat', 'group_id' => null, 'user_id' => null, 'parent_id' => null)));
    }
    if (!empty($r['group_id'])) {
        $group = groups_get_group(array('group_id' => $r['group_id']));
        if (!empty($group->name)) {
            $types['group'] = array('label' => $group->name, 'folders' => bp_docs_get_folders(array('display' => 'flat', 'group_id' => $r['group_id'], 'parent_id' => null)));
        }
    }
    if (!empty($r['user_id'])) {
        $user = new WP_User($r['user_id']);
        if (!empty($user->ID)) {
            $label = $r['user_id'] === bp_loggedin_user_id() ? __('My Folders', 'bp-docs') : bp_core_get_user_displayname($r['user_id']);
            $types['user'] = array('label' => $label, 'folders' => bp_docs_get_folders(array('display' => 'flat', 'user_id' => $r['user_id'], 'parent_id' => null)));
        }
    }
    $walker = new BP_Docs_Folder_Dropdown_Walker();
    // Global only
    if (1 === count($types) && isset($types['global'])) {
        $options = $walker->walk($types['global']['folders'], 10, array('selected' => $r['selected']));
        // If there is more than one folder type (global + user or group),
        // organize into <optgroup>
    } else {
        $options = '';
        foreach ($types as $type) {
            if (empty($type['folders'])) {
                continue;
            }
            $options .= sprintf('<optgroup label="%s">', esc_attr($type['label']));
            $options .= $walker->walk($type['folders'], 10, array('selected' => $r['selected']));
            $options .= '</optgroup>';
        }
    }
    $options = '<option value="">' . __(' - None - ', 'bp-docs') . '</option>' . $options;
    $retval = sprintf('<select name="%s" id="%s" class="chosen-select %s">', esc_attr($r['name']), esc_attr($r['id']), esc_attr($r['class'])) . $options . '</select>';
    if (false === $r['echo']) {
        return $retval;
    } else {
        echo $retval;
    }
}
<table class="doctable">
<tbody>
<?php 
if (bp_docs_enable_folders_for_current_context()) {
    ?>
	<?php 
    if (bp_docs_include_folders_in_loop_view()) {
        ?>
		<?php 
        foreach (bp_docs_get_folders() as $folder) {
            $folder_title = esc_html($folder->post_title);
            $folder_id = $folder->ID;
            $folder_url = esc_url(bp_docs_get_folder_url($folder_id));
            ?>
			<tr class="folder-row">
				<?php 
            /* Just to keep things even */
            ?>
				<?php 
            if (bp_docs_enable_attachments()) {
                ?>
					<td class="attachment-clip-cell">
						<?php 
                bp_docs_attachment_icon();
                ?>
					</td>
				<?php 
            }
            ?>

				<td class="folder-row-name" colspan=10>
<?php

$folders = bp_docs_get_folders('display=flat');
$walker = new BP_Docs_Folder_Walker();
?>

<?php 
$f = $walker->walk($folders, 10, array('foo' => 'bar'));
?>

<?php 
if (bp_docs_current_user_can('manage_folders')) {
    ?>
	<a id="manage-folders-link" href="<?php 
    echo add_query_arg('view', 'manage', remove_query_arg('view', bp_get_requested_url()));
    ?>
"><?php 
    _e('Manage Folders', 'bp-docs');
    ?>
</a>
<?php 
}
?>

<div style="clear:both"></div>

<ul class="docs-folder-tree">
	<?php 
echo $f;
?>
</ul>