Skip to:
Content

BuddyPress.org

Changeset 4006


Ignore:
Timestamp:
02/02/2011 07:01:14 AM (15 years ago)
Author:
johnjamesjacoby
Message:

Bring back support for WordPress profiles when XProfile component is not active.

Location:
trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/bp-core/bp-core-template.php

    r4004 r4006  
    2222    $component_index = !empty( $bp->displayed_user ) ? $bp->current_component : bp_get_root_slug( $bp->current_component );
    2323
    24     if ( count( $bp->bp_options_nav[$component_index] ) < 1 )
     24    if ( !isset( $bp->bp_options_nav[$component_index] ) || count( $bp->bp_options_nav[$component_index] ) < 1 )
    2525        return false;
    2626
     
    979979    global $bp;
    980980
    981     if ( bp_is_current_component( 'xprofile' ) )
     981    if ( bp_is_current_component( 'xprofile' ) || bp_is_current_component( 'profile' ) )
    982982        return true;
    983983
  • trunk/bp-members/bp-members-loader.php

    r3993 r4006  
    5858        // Define a slug, if necessary
    5959        if ( !defined( 'BP_MEMBERS_SLUG' ) )
    60             define( 'BP_MEMBERS_SLUG', $this->id );
     60            define( 'BP_MEMBERS_SLUG', 'members' );
    6161
    6262        $globals = array(
     
    141141        global $bp;
    142142
    143         return false;
     143        // Add 'Profile' to the main navigation
     144        if ( !bp_is_active( 'xprofile' ) ) {
     145            $main_nav = array(
     146                'name'                => __( 'Profile', 'buddypress' ),
     147                'slug'                => $bp->profile->slug,
     148                'position'            => 20,
     149                'screen_function'     => 'bp_members_screen_display_profile',
     150                'default_subnav_slug' => 'public',
     151                'item_css_id'         => $bp->profile->id
     152            );
    144153
    145         // Add 'User' to the main navigation
    146         $main_nav = array(
    147             'name'                => __( 'User', 'buddypress' ),
    148             'slug'                => $this->slug,
    149             'position'            => 10,
    150             'screen_function'     => 'bp_members_screen_my_users',
    151             'default_subnav_slug' => 'just-me',
    152             'item_css_id'         => $this->id
    153         );
     154            // User links
     155            $user_domain   = ( isset( $bp->displayed_user->domain ) )               ? $bp->displayed_user->domain               : $bp->loggedin_user->domain;
     156            $user_login    = ( isset( $bp->displayed_user->userdata->user_login ) ) ? $bp->displayed_user->userdata->user_login : $bp->loggedin_user->userdata->user_login;
     157            $profile_link  = trailingslashit( $user_domain . $bp->profile->slug );
    154158
    155         // Stop if there is no user displayed or logged in
    156         if ( !is_user_logged_in() && !isset( $bp->displayed_user->id ) )
    157             return;
    158 
    159         // User links
    160         $user_domain   = ( isset( $bp->displayed_user->domain ) )               ? $bp->displayed_user->domain               : $bp->loggedin_user->domain;
    161         $user_login    = ( isset( $bp->displayed_user->userdata->user_login ) ) ? $bp->displayed_user->userdata->user_login : $bp->loggedin_user->userdata->user_login;
    162         $users_link    = $user_domain . $this->slug . '/';
    163 
    164         // Add the subnav items to the users nav item if we are using a theme that supports this
    165         $sub_nav[] = array(
    166             'name'            => __( 'Personal', 'buddypress' ),
    167             'slug'            => 'just-me',
    168             'parent_url'      => $users_link,
    169             'parent_slug'     => $this->slug,
    170             'screen_function' => 'bp_members_screen_my_users',
    171             'position'        => 10
    172         );
    173 
    174         // Additional menu if friends is active
    175         if ( bp_is_active( 'friends' ) ) {
     159            // Add the subnav items to the profile
    176160            $sub_nav[] = array(
    177                 'name'            => __( 'Friends', 'buddypress' ),
    178                 'slug'            => BP_FRIENDS_SLUG,
    179                 'parent_url'      => $users_link,
    180                 'parent_slug'     => $this->slug,
    181                 'screen_function' => 'bp_members_screen_friends',
    182                 'position'        => 20,
    183                 'item_css_id'     => 'users-friends'
     161                'name'            => __( 'Public', 'buddypress' ),
     162                'slug'            => 'public',
     163                'parent_url'      => $profile_link,
     164                'parent_slug'     => $bp->profile->slug,
     165                'screen_function' => 'bp_members_screen_display_profile',
     166                'position'        => 10
    184167            );
    185         }
    186 
    187         // Additional menu if groups is active
    188         if ( bp_is_active( 'groups' ) ) {
    189             $sub_nav[] = array(
    190                 'name'            => __( 'Groups', 'buddypress' ),
    191                 'slug'            => BP_GROUPS_SLUG,
    192                 'parent_url'      => $users_link,
    193                 'parent_slug'     => $this->slug,
    194                 'screen_function' => 'bp_members_screen_groups',
    195                 'position'        => 30,
    196                 'item_css_id'     => 'users-groups'
    197             );
    198         }
    199 
    200         // Favorite users items
    201         $sub_nav[] = array(
    202             'name'            => __( 'Favorites', 'buddypress' ),
    203             'slug'            => 'favorites',
    204             'parent_url'      => $users_link,
    205             'parent_slug'     => $this->slug,
    206             'screen_function' => 'bp_members_screen_favorites',
    207             'position'        => 40,
    208             'item_css_id'     => 'users-favs'
    209         );
    210 
    211         // @ mentions
    212         $sub_nav[] = array(
    213             'name'            => sprintf( __( '@%s Mentions', 'buddypress' ), $user_login ),
    214             'slug'            => 'mentions',
    215             'parent_url'      => $users_link,
    216             'parent_slug'     => $this->slug,
    217             'screen_function' => 'bp_members_screen_mentions',
    218             'position'        => 50,
    219             'item_css_id'     => 'users-mentions'
    220         );
    221 
    222         // Adjust title based on view
    223         if ( bp_is_users_component() ) {
    224             if ( bp_is_my_profile() ) {
    225                 $bp->bp_options_title = __( 'You', 'buddypress' );
    226             } else {
    227                 $bp->bp_options_avatar = bp_core_fetch_avatar( array(
    228                     'item_id' => $bp->displayed_user->id,
    229                     'type'    => 'thumb'
    230                 ) );
    231                 $bp->bp_options_title  = $bp->displayed_user->fullname;
    232             }
    233168        }
    234169
    235170        parent::_setup_nav( $main_nav, $sub_nav );
    236171    }
     172
     173    /**
     174     * Sets up the title for pages and <title>
     175     *
     176     * @global obj $bp
     177     */
     178    function _setup_title() {
     179        global $bp;
     180
     181        if ( bp_is_my_profile() ) {
     182            $bp->bp_options_title = __( 'You', 'buddypress' );
     183        } elseif( bp_is_user() ) {
     184            $bp->bp_options_avatar = bp_core_fetch_avatar( array(
     185                'item_id' => $bp->displayed_user->id,
     186                'type'    => 'thumb'
     187            ) );
     188            $bp->bp_options_title  = $bp->displayed_user->fullname;
     189        }
     190
     191        parent::_setup_title();
     192    }
     193
    237194}
    238195// Create the users component
  • trunk/bp-members/bp-members-screens.php

    r3917 r4006  
    11<?php
     2
     3/**
     4 * Handles the display of the profile page by loading the correct template file.
     5 *
     6 * @package BuddyPress Members
     7 * @uses bp_core_load_template() Looks for and loads a template file within the current member theme (folder/filename)
     8 */
     9function bp_members_screen_display_profile() {
     10    do_action( 'bp_members_screen_display_profile' );
     11    bp_core_load_template( apply_filters( 'bp_members_screen_display_profile', 'members/single/home' ) );
     12}
    213
    314function bp_members_screen_index() {
  • trunk/bp-themes/bp-default/members/single/profile/profile-wp.php

    r3806 r4006  
    11<?php do_action( 'bp_before_profile_loop_content' ) ?>
    22
    3 <?php $ud = get_userdata( bp_core_get_displayed_userid() ); ?>
     3<?php $ud = get_userdata( bp_displayed_user_id() ); ?>
    44
    55<?php do_action( 'bp_before_profile_field_content' ) ?>
Note: See TracChangeset for help on using the changeset viewer.