function rw_bp_docs_set_the_doc_relatetd_group() { $d_doc_id = $folder_id = $group_id = 0; $group = new stdClass(); $url = '#'; $description = ''; if (bp_docs_is_existing_doc()) { $d_doc_id = get_queried_object_id(); $folder_id = bp_docs_get_doc_folder($d_doc_id); if ($folder_id) { $group_id = bp_docs_get_folder_group($folder_id); if ($group_id) { $group = groups_get_group(array('group_id' => $group_id)); buddypress()->groups->current_group = $group; if (!bp_disable_group_avatar_uploads()) { $url = bp_get_groups_root_slug() . '/' . $group->slug; } $avatar = bp_get_group_avatar('type=thumb&width=250&height=250'); $description = $group->description; $name = $group->name; } } else { $post = get_post($d_doc_id); $user = get_userdata($post->post_author); $name = $user->display_name; $avatar = bp_core_fetch_avatar(array('type' => 'thumb', 'width' => 250, 'height' => 250, 'item_id' => $user->ID)); $description = ''; $url = bp_get_members_root_slug() . '/' . $user->nice_name; } } ?> <div id="bp_docs_sitebar_info"> <h2><a href="/<?php echo $url; ?> "><?php echo $name; ?> </a></h2> <div class="group-avatar"> <a href="/<?php echo $url; ?> "><?php echo $avatar; ?> </a> </div> <div class="group-info"> <p><?php echo $description; ?> </p> </div> </div> <hr> <?php }
/** * @group bp_docs_get_folder_group */ public function test_bp_docs_get_folder_group_should_hit_primed_cache() { global $wpdb; $g = $this->factory->group->create(); $f = bp_docs_create_folder(array('name' => 'foo', 'group_id' => $g)); $this->assertSame($g, bp_docs_get_folder_group($f)); $num_queries = $wpdb->num_queries; $this->assertSame($g, bp_docs_get_folder_group($f)); $this->assertSame($num_queries, $wpdb->num_queries); }
/** * @see Walker::start_el() * @since 1.9 * * @param string $output Passed by reference. Used to append additional content. * @param object $page Page data object. * @param int $depth Depth of page. Used for padding. * @param int $current_page Page ID. * @param array $args */ public function start_el(&$output, $page, $depth = 0, $args = array(), $current_page = 0) { $group_id = bp_docs_get_folder_group($page->ID); $user_id = bp_docs_get_folder_user($page->ID); $parent_selector = bp_docs_folder_selector(array('name' => 'folder-parent-' . $page->ID, 'id' => 'folder-parent-' . $page->ID, 'class' => 'folder-parent', 'selected' => $page->post_parent, 'group_id' => $group_id, 'echo' => false)); $type_selector_markup = ''; if (empty($page->post_parent)) { $selected = null; if (!empty($group_id)) { $selected = $group_id; } else { if (!empty($user_id)) { $selected = 'me'; } else { $selected = 'global'; } } $type_selector = bp_docs_folder_type_selector(array('echo' => false, 'selected' => $selected, 'name' => 'folder-type-' . $page->ID, 'id' => 'folder-type-' . $page->ID)); $type_selector_markup = sprintf('<label for="folder-type-%d">%s</label> %s <div style="clear:both;"></div>', intval($page->ID), __('Type', 'bp-docs'), $type_selector); } $output .= sprintf(' <li class="folder folder-edit-closed" data-folder-id="%d"> <div class="folder-info"> <h4>%s<span class="folder-toggle-edit"> <a href="#">%s</a></span><span class="folder-toggle-close"> <a href="#">%s</a></span></h4> <div class="folder-details"> <form method="post" action=""> <label for="folder-name-%d">%s</label> <input id="folder-name-%d" name="folder-name-%d" value="%s" /> <div style="clear:both;"></div> <label for="folder-parent-%d">%s</label> %s <div style="clear:both;"></div> %s <input type="hidden" class="folder-id" name="folder-id" value="%d" /> %s <input type="submit" value="%s" class="primary-button" /> <a class="folder-delete" href="%s">%s</a> </form> </div> </div>', intval($page->ID), esc_html($page->post_title), __('Edit', 'bp-docs'), __('Close', 'bp-docs'), intval($page->ID), __('Name', 'bp-docs'), intval($page->ID), intval($page->ID), esc_attr($page->post_title), intval($page->ID), __('Parent', 'bp-docs'), $parent_selector, $type_selector_markup, intval($page->ID), wp_nonce_field('bp-docs-edit-folder-' . $page->ID, 'bp-docs-edit-folder-nonce-' . $page->ID, false, false), __('Save Changes', 'bp-docs'), add_query_arg('delete-folder', $page->ID, bp_get_requested_url()), __('Delete', 'bp-docs')); }