Index: /trunk/bp-activity/bp-activity-loader.php
===================================================================
--- /trunk/bp-activity/bp-activity-loader.php (revision 4150)
+++ /trunk/bp-activity/bp-activity-loader.php (revision 4151)
@@ -101,13 +101,10 @@
// Determine user to use
- if ( isset( $bp->displayed_user->domain ) ) {
+ if ( isset( $bp->displayed_user->domain ) )
$user_domain = $bp->displayed_user->domain;
- $user_login = $bp->displayed_user->userdata->user_login;
- } elseif ( isset( $bp->loggedin_user->domain ) ) {
+ elseif ( isset( $bp->loggedin_user->domain ) )
$user_domain = $bp->loggedin_user->domain;
- $user_login = $bp->loggedin_user->userdata->user_login;
- } else {
+ else
return;
- }
// User link
@@ -124,4 +121,26 @@
);
+ // @ mentions
+ $sub_nav[] = array(
+ 'name' => __( 'Mentions', 'buddypress' ),
+ 'slug' => 'mentions',
+ 'parent_url' => $activity_link,
+ 'parent_slug' => $this->slug,
+ 'screen_function' => 'bp_activity_screen_mentions',
+ 'position' => 20,
+ 'item_css_id' => 'activity-mentions'
+ );
+
+ // Favorite activity items
+ $sub_nav[] = array(
+ 'name' => __( 'Favorites', 'buddypress' ),
+ 'slug' => 'favorites',
+ 'parent_url' => $activity_link,
+ 'parent_slug' => $this->slug,
+ 'screen_function' => 'bp_activity_screen_favorites',
+ 'position' => 30,
+ 'item_css_id' => 'activity-favs'
+ );
+
// Additional menu if friends is active
if ( bp_is_active( 'friends' ) ) {
@@ -132,5 +151,5 @@
'parent_slug' => $this->slug,
'screen_function' => 'bp_activity_screen_friends',
- 'position' => 20,
+ 'position' => 40,
'item_css_id' => 'activity-friends'
) ;
@@ -145,32 +164,76 @@
'parent_slug' => $this->slug,
'screen_function' => 'bp_activity_screen_groups',
- 'position' => 30,
+ 'position' => 50,
'item_css_id' => 'activity-groups'
);
}
- // Favorite activity items
- $sub_nav[] = array(
- 'name' => __( 'Favorites', 'buddypress' ),
- 'slug' => 'favorites',
- 'parent_url' => $activity_link,
- 'parent_slug' => $this->slug,
- 'screen_function' => 'bp_activity_screen_favorites',
- 'position' => 40,
- 'item_css_id' => 'activity-favs'
- );
-
- // @ mentions
- $sub_nav[] = array(
- 'name' => sprintf( __( '@%s Mentions', 'buddypress' ), $user_login ),
- 'slug' => 'mentions',
- 'parent_url' => $activity_link,
- 'parent_slug' => $this->slug,
- 'screen_function' => 'bp_activity_screen_mentions',
- 'position' => 50,
- 'item_css_id' => 'activity-mentions'
- );
-
parent::_setup_nav( $main_nav, $sub_nav );
+ }
+
+ /**
+ * Set up the admin bar
+ *
+ * @global obj $bp
+ */
+ function _setup_admin_bar() {
+ global $bp;
+
+ // Menus for logged in user
+ if ( is_user_logged_in() ) {
+
+ // Setup the logged in user variables
+ $user_domain = $bp->loggedin_user->domain;
+ $activity_link = trailingslashit( $user_domain . $this->slug );
+
+ // Add the "Activity" sub menu
+ $wp_admin_nav[] = array(
+ 'parent' => $bp->my_account_menu_id,
+ 'id' => 'my-account-' . $this->id,
+ 'title' => __( 'Activity', 'buddypress' ),
+ 'href' => trailingslashit( $activity_link )
+ );
+
+ // Mentions
+ $wp_admin_nav[] = array(
+ 'parent' => 'my-account-' . $this->id,
+ 'title' => __( 'Mentions', 'buddypress' ),
+ 'href' => trailingslashit( $activity_link . 'mentions' )
+ );
+
+ // Personal
+ $wp_admin_nav[] = array(
+ 'parent' => 'my-account-' . $this->id,
+ 'title' => __( 'Personal', 'buddypress' ),
+ 'href' => trailingslashit( $activity_link )
+ );
+
+ // Favorites
+ $wp_admin_nav[] = array(
+ 'parent' => 'my-account-' . $this->id,
+ 'title' => __( 'Favorites', 'buddypress' ),
+ 'href' => trailingslashit( $activity_link . 'favorites' )
+ );
+
+ // Friends?
+ if ( bp_is_active( 'friends' ) ) {
+ $wp_admin_nav[] = array(
+ 'parent' => 'my-account-' . $this->id,
+ 'title' => __( 'Friends', 'buddypress' ),
+ 'href' => trailingslashit( $activity_link . bp_get_friends_slug() )
+ );
+ }
+
+ // Groups?
+ if ( bp_is_active( 'groups' ) ) {
+ $wp_admin_nav[] = array(
+ 'parent' => 'my-account-' . $this->id,
+ 'title' => __( 'Groups', 'buddypress' ),
+ 'href' => trailingslashit( $activity_link . bp_get_groups_slug() )
+ );
+ }
+ }
+
+ parent::_setup_admin_bar( $wp_admin_nav );
}
Index: /trunk/bp-blogs/bp-blogs-loader.php
===================================================================
--- /trunk/bp-blogs/bp-blogs-loader.php (revision 4150)
+++ /trunk/bp-blogs/bp-blogs-loader.php (revision 4151)
@@ -113,5 +113,38 @@
parent::_setup_nav( $main_nav );
}
-
+
+ /**
+ * Set up the admin bar
+ *
+ * @global obj $bp
+ */
+ function _setup_admin_bar() {
+ global $bp;
+
+ // Menus for logged in user
+ if ( is_user_logged_in() ) {
+
+ $blogs_link = trailingslashit( $bp->loggedin_user->domain . $this->slug );
+
+ // Add the "Blogs" sub menu
+ $wp_admin_nav[] = array(
+ 'parent' => $bp->my_account_menu_id,
+ 'id' => 'my-account-' . $this->id,
+ 'title' => __( 'Blogs', 'buddypress' ),
+ 'href' => trailingslashit( $blogs_link )
+ );
+
+ // My Blogs
+ $wp_admin_nav[] = array(
+ 'parent' => 'my-account-' . $this->id,
+ 'title' => __( 'My Blogs', 'buddypress' ),
+ 'href' => trailingslashit( $blogs_link . 'my-blogs' )
+ );
+
+ }
+
+ parent::_setup_admin_bar( $wp_admin_nav );
+ }
+
/**
* Sets up the title for pages and
Index: /trunk/bp-core/bp-core-adminbar.php
===================================================================
--- /trunk/bp-core/bp-core-adminbar.php (revision 4150)
+++ /trunk/bp-core/bp-core-adminbar.php (revision 4151)
@@ -2,6 +2,40 @@
/**
- * Reserved for WordPress admin bar functions
+ * BuddyPress Core Admin Bar
+ *
+ * Handles the core functions related to the WordPress Admin Bar
+ *
+ * @package BuddyPress
+ * @subpackage Core
*/
+/**
+ * Unhook the WordPress core menus. We will be adding our own to replace these.
+ *
+ * @todo Single blog/post/group/user/forum/activity menus
+ * @todo Admin/moderator menus
+ *
+ * @since BuddyPress (r4151)
+ *
+ * @uses remove_action
+ * @uses is_network_admin()
+ * @uses is_user_admin()
+ */
+function bp_admin_bar_remove_wp_menus() {
+ remove_action( 'admin_bar_menu', 'wp_admin_bar_my_account_menu', 10 );
+ remove_action( 'admin_bar_menu', 'wp_admin_bar_my_sites_menu', 20 );
+ remove_action( 'admin_bar_menu', 'wp_admin_bar_edit_menu', 30 );
+ remove_action( 'admin_bar_menu', 'wp_admin_bar_shortlink_menu', 80 );
+
+ if ( !is_network_admin() && !is_user_admin() ) {
+ remove_action( 'admin_bar_menu', 'wp_admin_bar_new_content_menu', 40 );
+ remove_action( 'admin_bar_menu', 'wp_admin_bar_comments_menu', 50 );
+ remove_action( 'admin_bar_menu', 'wp_admin_bar_appearance_menu', 60 );
+ }
+
+ remove_action( 'admin_bar_menu', 'wp_admin_bar_updates_menu', 70 );
+}
+if ( defined( 'BP_USE_WP_ADMIN_BAR' ) )
+ add_action( 'bp_init', 'bp_admin_bar_remove_wp_menus', 2 );
+
?>
Index: /trunk/bp-core/bp-core-component.php
===================================================================
--- /trunk/bp-core/bp-core-component.php (revision 4150)
+++ /trunk/bp-core/bp-core-component.php (revision 4151)
@@ -54,4 +54,9 @@
/**
+ * @var array WordPress admin bar links
+ */
+ var $admin_menu;
+
+ /**
* Component loader
*
@@ -189,4 +194,7 @@
// Register post types
+ add_action( 'bp_setup_admin_bar', array ( $this, '_setup_admin_bar' ), 10 );
+
+ // Register post types
add_action( 'bp_setup_title', array ( $this, '_setup_title' ), 10 );
@@ -214,4 +222,5 @@
*/
function _setup_nav( $main_nav = '', $sub_nav = '' ) {
+
// No sub nav items without a main nav item
if ( !empty( $main_nav ) ) {
@@ -231,4 +240,34 @@
/**
+ * Setup the admin bar
+ *
+ * @global obj $wp_admin_bar
+ * @param array $wp_admin_menus
+ */
+ function _setup_admin_bar( $wp_admin_nav = '' ) {
+
+ // Do not proceed if constant is not set
+ if ( !defined( 'BP_USE_WP_ADMIN_BAR' ) )
+ return;
+
+ // Do we have admin bar menus to add?
+ if ( !empty( $wp_admin_nav ) ) {
+
+ // Set this objects menus
+ $this->admin_menu = $wp_admin_nav;
+
+ // Define the WordPress global
+ global $wp_admin_bar;
+
+ // Add each admin menu
+ foreach( $this->admin_menu as $admin_menu )
+ $wp_admin_bar->add_menu( $admin_menu );
+ }
+
+ // Call action
+ do_action( 'bp_' . $this->id . '_setup_admin_bar' );
+ }
+
+ /**
* Setup the component title
*
Index: /trunk/bp-core/bp-core-hooks.php
===================================================================
--- /trunk/bp-core/bp-core-hooks.php (revision 4150)
+++ /trunk/bp-core/bp-core-hooks.php (revision 4151)
@@ -23,8 +23,11 @@
// Setup the navigation menu
-add_action( 'bp_init', 'bp_setup_nav', 8 );
+add_action( 'bp_init', 'bp_setup_nav', 7 );
+
+// Setup the navigation menu
+add_action( 'bp_init', 'bp_setup_admin_bar', 8 );
// Setup the title
-add_action( 'bp_init', 'bp_setup_title', 8 );
+add_action( 'bp_init', 'bp_setup_title', 9 );
// Setup widgets
@@ -55,4 +58,11 @@
function bp_setup_nav() {
do_action( 'bp_setup_nav' );
+}
+
+/**
+ * Set navigation elements
+ */
+function bp_setup_admin_bar() {
+ do_action( 'bp_setup_admin_bar' );
}
Index: /trunk/bp-core/bp-core-loader.php
===================================================================
--- /trunk/bp-core/bp-core-loader.php (revision 4150)
+++ /trunk/bp-core/bp-core-loader.php (revision 4151)
@@ -116,4 +116,9 @@
$bp->pages = bp_core_get_page_names();
+ /** Admin Bar *********************************************************/
+
+ // Set the 'My Account' global to prevent debug notices
+ $bp->my_account_menu_id = false;
+
/** Component and Action **********************************************/
Index: /trunk/bp-forums/bp-forums-loader.php
===================================================================
--- /trunk/bp-forums/bp-forums-loader.php (revision 4150)
+++ /trunk/bp-forums/bp-forums-loader.php (revision 4151)
@@ -131,5 +131,5 @@
'screen_function' => 'bp_member_forums_screen_topics',
'position' => 20,
- 'item_css_id' => 'forums-friends'
+ 'item_css_id' => 'topics'
);
@@ -142,5 +142,5 @@
'screen_function' => 'bp_member_forums_screen_replies',
'position' => 40,
- 'item_css_id' => 'forums-friends'
+ 'item_css_id' => 'replies'
);
@@ -153,8 +153,57 @@
'screen_function' => 'bp_member_forums_screen_favorites',
'position' => 60,
- 'item_css_id' => 'forums-favs'
+ 'item_css_id' => 'favorites'
);
parent::_setup_nav( $main_nav, $sub_nav );
+ }
+
+ /**
+ * Set up the admin bar
+ *
+ * @global obj $bp
+ */
+ function _setup_admin_bar() {
+ global $bp;
+
+ // "My Account" menu
+ if ( is_user_logged_in() ) {
+
+ // Setup the logged in user variables
+ $user_domain = $bp->loggedin_user->domain;
+ $user_login = $bp->loggedin_user->userdata->user_login;
+ $forums_link = trailingslashit( $user_domain . $this->slug );
+
+ // Add the "My Account" sub menus
+ $wp_admin_nav[] = array(
+ 'parent' => $bp->my_account_menu_id,
+ 'id' => 'my-account-' . $this->id,
+ 'title' => __( 'Forums', 'buddypress' ),
+ 'href' => trailingslashit( $forums_link )
+ );
+
+ // Topics
+ $wp_admin_nav[] = array(
+ 'parent' => 'my-account-' . $this->id,
+ 'title' => __( 'My Topics', 'buddypress' ),
+ 'href' => trailingslashit( $forums_link . 'topics' )
+ );
+
+ // Replies
+ $wp_admin_nav[] = array(
+ 'parent' => 'my-account-' . $this->id,
+ 'title' => __( 'My Replies', 'buddypress' ),
+ 'href' => trailingslashit( $forums_link . 'replies' )
+ );
+
+ // Favorites
+ $wp_admin_nav[] = array(
+ 'parent' => 'my-account-' . $this->id,
+ 'title' => __( 'My Favorites', 'buddypress' ),
+ 'href' => trailingslashit( $forums_link . 'favorites' )
+ );
+ }
+
+ parent::_setup_admin_bar( $wp_admin_nav );
}
Index: /trunk/bp-friends/bp-friends-loader.php
===================================================================
--- /trunk/bp-friends/bp-friends-loader.php (revision 4150)
+++ /trunk/bp-friends/bp-friends-loader.php (revision 4151)
@@ -124,4 +124,54 @@
parent::_setup_nav( $main_nav, $sub_nav );
+ }
+
+ /**
+ * Set up the admin bar
+ *
+ * @global obj $bp
+ */
+ function _setup_admin_bar() {
+ global $bp;
+
+ // "My Account" menu
+ if ( is_user_logged_in() ) {
+
+ // Setup the logged in user variables
+ $user_domain = $bp->loggedin_user->domain;
+ $friends_link = trailingslashit( $user_domain . $this->slug );
+
+ // Pending friend requests
+ if ( $count = count( friends_get_friendship_request_user_ids( $bp->loggedin_user->id ) ) ) {
+ $title = sprintf( __( 'Friends (%s)', 'buddypress' ), $count );
+ $pending = sprintf( __( 'Pending Requests (%s)', 'buddypress' ), $count );
+ } else {
+ $title = __( 'Friends', 'buddypress' );
+ $pending = __( 'No Pending Requests', 'buddypress' );
+ }
+
+ // Add the "My Account" sub menus
+ $wp_admin_nav[] = array(
+ 'parent' => $bp->my_account_menu_id,
+ 'id' => 'my-account-' . $this->id,
+ 'title' => $title,
+ 'href' => trailingslashit( $friends_link )
+ );
+
+ // My Groups
+ $wp_admin_nav[] = array(
+ 'parent' => 'my-account-' . $this->id,
+ 'title' => __( 'My Friends', 'buddypress' ),
+ 'href' => trailingslashit( $friends_link )
+ );
+
+ // Requests
+ $wp_admin_nav[] = array(
+ 'parent' => 'my-account-' . $this->id,
+ 'title' => $pending,
+ 'href' => trailingslashit( $friends_link . 'requests' )
+ );
+ }
+
+ parent::_setup_admin_bar( $wp_admin_nav );
}
Index: /trunk/bp-groups/bp-groups-loader.php
===================================================================
--- /trunk/bp-groups/bp-groups-loader.php (revision 4150)
+++ /trunk/bp-groups/bp-groups-loader.php (revision 4151)
@@ -338,4 +338,56 @@
/**
+ * Set up the admin bar
+ *
+ * @global obj $bp
+ */
+ function _setup_admin_bar() {
+ global $bp;
+
+ // Menus for logged in user
+ if ( is_user_logged_in() ) {
+
+ // Setup the logged in user variables
+ $user_domain = $bp->loggedin_user->domain;
+ $groups_link = trailingslashit( $user_domain . $this->slug );
+
+ // Pending group invites
+ $count = groups_get_invites_for_user( $bp->loggedin_user->id );
+
+ if ( !empty( $count->total ) ) {
+ $title = sprintf( __( 'Groups (%s)', 'buddypress' ), $count->total );
+ $pending = sprintf( __( 'Pending Invites (%s)', 'buddypress' ), $count->total );
+ } else {
+ $title = __( 'Groups', 'buddypress' );
+ $pending = __( 'No Pending Invites', 'buddypress' );
+ }
+
+ // Add the "My Account" sub menus
+ $wp_admin_nav[] = array(
+ 'parent' => $bp->my_account_menu_id,
+ 'id' => 'my-account-' . $this->id,
+ 'title' => $title,
+ 'href' => trailingslashit( $groups_link )
+ );
+
+ // My Groups
+ $wp_admin_nav[] = array(
+ 'parent' => 'my-account-' . $this->id,
+ 'title' => __( 'My Groups', 'buddypress' ),
+ 'href' => trailingslashit( $groups_link )
+ );
+
+ // Invitations
+ $wp_admin_nav[] = array(
+ 'parent' => 'my-account-' . $this->id,
+ 'title' => $pending,
+ 'href' => trailingslashit( $groups_link . 'invites' )
+ );
+ }
+
+ parent::_setup_admin_bar( $wp_admin_nav );
+ }
+
+ /**
* Sets up the title for pages and
*
Index: /trunk/bp-members/bp-members-loader.php
===================================================================
--- /trunk/bp-members/bp-members-loader.php (revision 4150)
+++ /trunk/bp-members/bp-members-loader.php (revision 4151)
@@ -38,4 +38,5 @@
'template',
'buddybar',
+ 'adminbar',
'functions',
'notifications',
Index: /trunk/bp-messages/bp-messages-loader.php
===================================================================
--- /trunk/bp-messages/bp-messages-loader.php (revision 4150)
+++ /trunk/bp-messages/bp-messages-loader.php (revision 4151)
@@ -153,4 +153,81 @@
}
+ parent::_setup_nav( $main_nav, $sub_nav );
+ }
+
+ /**
+ * Set up the admin bar
+ *
+ * @global obj $bp
+ */
+ function _setup_admin_bar() {
+ global $bp;
+
+ // "My Account" menu
+ if ( is_user_logged_in() ) {
+
+ // Setup the logged in user variables
+ $user_domain = $bp->loggedin_user->domain;
+ $messages_link = trailingslashit( $user_domain . $this->slug );
+
+ // Unread message count
+ if ( $count = messages_get_unread_count() ) {
+ $title = sprintf( __( 'Messages (%s)', 'buddypress' ), $count );
+ $inbox = sprintf( __( 'Inbox (%s)', 'buddypress' ), $count );
+ } else {
+ $title = __( 'Messages', 'buddypress' );
+ $inbox = __( 'Inbox', 'buddypress' );
+ }
+
+ // Add main Messages menu
+ $wp_admin_nav[] = array(
+ 'parent' => $bp->my_account_menu_id,
+ 'id' => 'my-account-' . $this->id,
+ 'title' => $title,
+ 'href' => trailingslashit( $messages_link )
+ );
+
+ // Inbox
+ $wp_admin_nav[] = array(
+ 'parent' => 'my-account-' . $this->id,
+ 'title' => $inbox,
+ 'href' => trailingslashit( $messages_link . 'inbox' )
+ );
+
+ // Sent Messages
+ $wp_admin_nav[] = array(
+ 'parent' => 'my-account-' . $this->id,
+ 'title' => __( 'Sent', 'buddypress' ),
+ 'href' => trailingslashit( $messages_link . 'sent' )
+ );
+
+ // Compose Message
+ $wp_admin_nav[] = array(
+ 'parent' => 'my-account-' . $this->id,
+ 'title' => __( 'Compose', 'buddypress' ),
+ 'href' => trailingslashit( $messages_link . 'compose' )
+ );
+
+ // Site Wide Notices
+ if ( is_super_admin() ) {
+ $wp_admin_nav[] = array(
+ 'parent' => 'my-account-' . $this->id,
+ 'title' => __( 'All Member Notices', 'buddypress' ),
+ 'href' => trailingslashit( $messages_link . 'notices' )
+ );
+ }
+ }
+
+ parent::_setup_admin_bar( $wp_admin_nav );
+ }
+
+ /**
+ * Sets up the title for pages and
+ *
+ * @global obj $bp
+ */
+ function _setup_title() {
+ global $bp;
+
if ( bp_is_messages_component() ) {
if ( bp_is_my_profile() ) {
@@ -165,5 +242,5 @@
}
- parent::_setup_nav( $main_nav, $sub_nav );
+ parent::_setup_title();
}
}
Index: /trunk/bp-settings/bp-settings-loader.php
===================================================================
--- /trunk/bp-settings/bp-settings-loader.php (revision 4150)
+++ /trunk/bp-settings/bp-settings-loader.php (revision 4151)
@@ -116,4 +116,54 @@
parent::_setup_nav( $main_nav, $sub_nav );
}
+
+ /**
+ * Set up the admin bar
+ *
+ * @global obj $bp
+ */
+ function _setup_admin_bar() {
+ global $bp;
+
+ // "My Account" menu
+ if ( is_user_logged_in() ) {
+
+ // Setup the logged in user variables
+ $user_domain = $bp->loggedin_user->domain;
+ $settings_link = trailingslashit( $user_domain . $this->slug );
+
+ // Add main Settings menu
+ $wp_admin_nav[] = array(
+ 'parent' => $bp->my_account_menu_id,
+ 'id' => 'my-account-' . $this->id,
+ 'title' => __( 'Settings', 'buddypress' ),
+ 'href' => trailingslashit( $settings_link )
+ );
+
+ // General Account
+ $wp_admin_nav[] = array(
+ 'parent' => 'my-account-' . $this->id,
+ 'title' => __( 'General', 'buddypress' ),
+ 'href' => trailingslashit( $settings_link . 'general' )
+ );
+
+ // Notifications
+ $wp_admin_nav[] = array(
+ 'parent' => 'my-account-' . $this->id,
+ 'title' => __( 'Notifications', 'buddypress' ),
+ 'href' => trailingslashit( $settings_link . 'notifications' )
+ );
+
+ // Delete Account
+ if ( !is_super_admin() && empty( $bp->site_options['bp-disable-account-deletion'] ) ) {
+ $wp_admin_nav[] = array(
+ 'parent' => 'my-account-' . $this->id,
+ 'title' => __( 'Compose', 'buddypress' ),
+ 'href' => trailingslashit( $settings_link . 'delete-account' )
+ );
+ }
+ }
+
+ parent::_setup_admin_bar( $wp_admin_nav );
+ }
}
// Create the settingss component
Index: /trunk/bp-xprofile/bp-xprofile-loader.php
===================================================================
--- /trunk/bp-xprofile/bp-xprofile-loader.php (revision 4150)
+++ /trunk/bp-xprofile/bp-xprofile-loader.php (revision 4151)
@@ -152,4 +152,52 @@
/**
+ * Set up the admin bar
+ *
+ * @global obj $bp
+ */
+ function _setup_admin_bar() {
+ global $bp;
+
+ // Menus for logged in user
+ if ( is_user_logged_in() ) {
+
+ // Profile link
+ $profile_link = trailingslashit( $bp->loggedin_user->domain . $this->slug );
+
+ // Add the "Profile" sub menu
+ $wp_admin_nav[] = array(
+ 'parent' => $bp->my_account_menu_id,
+ 'id' => 'my-account-' . $this->id,
+ 'title' => __( 'Profile', 'buddypress' ),
+ 'href' => trailingslashit( $profile_link )
+ );
+
+ // View Profile
+ $wp_admin_nav[] = array(
+ 'parent' => 'my-account-' . $this->id,
+ 'title' => __( 'View My Profile', 'buddypress' ),
+ 'href' => trailingslashit( $profile_link . 'public' )
+ );
+
+ // Edit Profile
+ $wp_admin_nav[] = array(
+ 'parent' => 'my-account-' . $this->id,
+ 'title' => __( 'Edit My Profile', 'buddypress' ),
+ 'href' => trailingslashit( $profile_link . 'edit' )
+ );
+
+ // Edit Profile
+ $wp_admin_nav[] = array(
+ 'parent' => 'my-account-' . $this->id,
+ 'title' => __( 'Change My Avatar', 'buddypress' ),
+ 'href' => trailingslashit( $profile_link . 'change-avatar' )
+ );
+
+ }
+
+ parent::_setup_admin_bar( $wp_admin_nav );
+ }
+
+ /**
* Sets up the title for pages and
*