/** * Set up component navigation. * * @since BuddyPress (1.5.0) * * @see BP_Component::setup_nav() for a description of arguments. * * @param array $main_nav Optional. See BP_Component::setup_nav() for * description. * @param array $sub_nav Optional. See BP_Component::setup_nav() for * description. */ public function setup_nav($main_nav = array(), $sub_nav = array()) { if (bp_displayed_user_id() === 0 || bp_displayed_user_id() === get_current_user_id()) { return; } // Determine user to use if (bp_displayed_user_domain()) { $user_domain = bp_displayed_user_domain(); } $mutual_friends_link = trailingslashit($user_domain . BP_MUTUAL_FRIENDS_SLUG); // Add 'Friends' to the main navigation // Add 'Friends' to the main navigation $count = bmf_mutual_friend_total_count(); $class = 0 === $count ? 'no-count' : 'count'; $main_nav = array('name' => sprintf(__('Mutual Friends <span class="%s">%s</span>', 'buddypress'), esc_attr($class), bp_core_number_format($count)), 'slug' => BP_MUTUAL_FRIENDS_SLUG, 'position' => 60, 'screen_function' => 'bp_mutual_friends_screen', 'default_subnav_slug' => 'my-mutual-friends', 'item_css_id' => 'members'); // Add the subnav items to the mutual-friends nav item $sub_nav[] = array('name' => _x('Mutual Friends', 'Friends screen sub nav', 'buddypress'), 'slug' => 'my-mutual-friends', 'parent_url' => $mutual_friends_link, 'parent_slug' => BP_MUTUAL_FRIENDS_SLUG, 'screen_function' => 'bp_my_mutual_friends_screen', 'position' => 10); parent::setup_nav($main_nav, $sub_nav); }
/** * Return mutual friends counts for the current member in the loop. * * @since 1.5 * * * @param array $classes Array of custom classes * * @return string Row class of the member */ function bmf_get_total_mutual_friend_count() { global $members_template; if (!is_user_logged_in()) { return; } $mutual_friends_count = bmf_mutual_friend_total_count($members_template->member->ID); if (get_current_user_id() == $members_template->member->ID) { return; } $mutual_friends_link = ''; $show_mutual_friends_count = apply_filters('bmf_show_mutual_friend_count', true); if ($show_mutual_friends_count && 0 < absint($mutual_friends_count)) { $mutual_friends_link = '<a href="" data-action="bmf_mutual_friends_dialog" data-effect="mfp-zoom-in" data-user-id="' . $members_template->member->ID . '" class="mutual-friends"> ' . sprintf(_n('%s mutual friend', '%s mutual friends', $mutual_friends_count, 'bmf'), $mutual_friends_count) . ' </a>'; } else { $friends_count = friends_get_total_friend_count($members_template->member->ID); $show_friends_count = apply_filters('bmf_show_friend_count', true); if (0 < $friends_count && $show_friends_count) { $mutual_friends_link = '<a href="" data-action="bmf_friends_dialog" data-effect="mfp-zoom-in" data-user-id="' . $members_template->member->ID . '" class="mutual-friends"> ' . sprintf(_n('%s friend', '%s friends', $friends_count, 'bmf'), $friends_count) . ' </a>'; } } return apply_filters('bmf_get_total_mutual_friend_count', $mutual_friends_link); }