/**
  * @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)));
 }
 public function end_el(&$output, $page, $depth = 0, $args = array(), $current_page = 0)
 {
     // Get the docs belonging to this folder
     $folder_term = bp_docs_get_folder_term($page->ID);
     $folder_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' => $folder_term))));
     $empty_class = empty($folder_docs) ? 'empty' : '';
     $output .= sprintf('<ul class="docs-in-folder %s" id="docs-in-folder-%d">', $empty_class, $page->ID);
     $output .= '<li class="folder-empty">' . __('This folder contains no Docs.', 'bp-docs') . '</li>';
     foreach ($folder_docs as $folder_doc) {
         $output .= sprintf('<li class="doc-in-folder" id="doc-in-folder-%d" data-doc-id="%d">%s<a href="%s">%s</a>%s</li>', $folder_doc->ID, $folder_doc->ID, bp_docs_get_genericon('document', $folder_doc->ID), get_permalink($folder_doc), esc_html($folder_doc->post_title), wp_nonce_field('bp-docs-folder-drop-' . $folder_doc->ID, 'bp-docs-folder-drop-nonce-' . $folder_doc->ID, false, false));
     }
     $output .= '</ul>';
     $output .= '</li>';
 }