Skip to:
Content

BuddyPress.org


Ignore:
Timestamp:
01/25/2011 08:58:56 PM (14 years ago)
Author:
johnjamesjacoby
Message:

Rename new 'bp-users' component to 'bp-members' for consistency through-out project.
Core, Messages, and Friends Components now use the BP_Component class.
Split Friends and Messages components into smaller files.
Change references to 'profile' to 'xprofile' through-out project for consistency.
Introduce 'bp_actions' and 'bp_screens' standard hooks to replace the usage of 'wp' through-out project.
Move component loader sequence into bp-core-bootstrap.php,
Move old root_component action into 1.3 deprecated file.

Location:
trunk/bp-members
Files:
1 copied
1 moved

Legend:

Unmodified
Added
Removed
  • trunk/bp-members/bp-members-loader.php

    r3916 r3917  
    22
    33/**
    4  * BuddyPress User Loader
     4 * BuddyPress Member Loader
    55 *
    6  * A users component to help contain all of the user specific slugs
     6 * A members component to help contain all of the user specific slugs
    77 *
    88 * @package BuddyPress
     
    1010 */
    1111
    12 class BP_User_Component extends BP_Component {
    13 
    14     /**
    15      * Start the users component creation process
     12class BP_Members_Component extends BP_Component {
     13
     14    /**
     15     * Start the members component creation process
    1616     *
    1717     * @since BuddyPress {unknown}
    1818     */
    19     function BP_User_Component() {
    20         parent::start( 'members', __( 'Members', 'buddypress' ) );
     19    function BP_Members_Component() {
     20        parent::start(
     21            'members',
     22            __( 'Members', 'buddypress' ),
     23            BP_PLUGIN_DIR
     24        );
     25    }
     26
     27    /**
     28     * Include files
     29     *
     30     * @global obj $bp
     31     */
     32    function _includes() {
     33        $includes = array(
     34            'signup',
     35            'actions',
     36            'filters',
     37            'screens',
     38            'template',
     39            'functions',
     40            'notifications',
     41        );
     42        parent::_includes( $includes );
    2143    }
    2244
     
    3860
    3961        // Do some slug checks
    40         $this->slug      = BP_MEMBERS_SLUG;
    41         $this->root_slug = isset( $bp->pages->members->slug ) ? $bp->pages->members->slug : $this->slug;
    42 
    43         // Tables
    44         $this->table_name      = $bp->table_prefix . 'bp_users';
    45         $this->table_name_meta = $bp->table_prefix . 'bp_users_meta';
    46 
    47         // The default text for the members directory search box
    48         $this->default_search_string = __( 'Search Members...', 'buddypress' );
     62        $global_tables = array(
     63            'table_name'      => $bp->table_prefix . 'bp_users',
     64            'table_name_meta' => $bp->table_prefix . 'bp_members_meta',
     65        );
     66
     67        $globals = array(
     68            'slug'          => BP_MEMBERS_SLUG,
     69            'root_slug'     => isset( $bp->pages->members->slug ) ? $bp->pages->members->slug : BP_MEMBERS_SLUG,
     70            'search_string' => __( 'Search Members...', 'buddypress' ),
     71            'global_tables' => $global_tables
     72        );
     73
     74        parent::_setup_globals( $globals );
    4975
    5076        /** Logged in user ****************************************************/
    51 
    52         // Logged in user is the 'current_user'
    53         $current_user                      = wp_get_current_user();
    54 
    55         // The user ID of the user who is currently logged in.
    56         $bp->loggedin_user->id             = $current_user->ID;
    57 
    58         // The domain for the user currently logged in. eg: http://domain.com/members/andy
    59         $bp->loggedin_user->domain         = bp_core_get_user_domain( $bp->loggedin_user->id );
    60 
    61         // The core userdata of the user who is currently logged in.
    62         $bp->loggedin_user->userdata       = bp_core_get_core_userdata( $bp->loggedin_user->id );
    6377
    6478        // Fetch the full name for the logged in user
     
    6882        $bp->loggedin_user->is_super_admin = is_super_admin();
    6983        $bp->loggedin_user->is_site_admin  = $bp->loggedin_user->is_super_admin; // deprecated 1.2.6
     84
     85        // The domain for the user currently logged in. eg: http://domain.com/members/andy
     86        $bp->loggedin_user->domain         = bp_core_get_user_domain( $bp->loggedin_user->id );
     87
     88        // The core userdata of the user who is currently logged in.
     89        $bp->loggedin_user->userdata       = bp_core_get_core_userdata( $bp->loggedin_user->id );
    7090
    7191        /**
     
    99119        $bp->displayed_user->fullname = bp_core_get_user_displayname( $bp->displayed_user->id );
    100120
    101         /** Active Component **************************************************/
    102 
    103         // Users is active
    104         $bp->active_components[$this->id] = $this->id;
    105        
    106121        /** Default Profile Component *****************************************/
    107122        if ( !$bp->current_component && $bp->displayed_user->id )
     
    111126
    112127    /**
    113      * Include files
    114      *
    115      * @global obj $bp
    116      */
    117     function _includes() {
    118         require_once( BP_PLUGIN_DIR . '/bp-users/bp-users-signup.php'        );
    119         require_once( BP_PLUGIN_DIR . '/bp-users/bp-users-actions.php'       );
    120         require_once( BP_PLUGIN_DIR . '/bp-users/bp-users-filters.php'       );
    121         require_once( BP_PLUGIN_DIR . '/bp-users/bp-users-screens.php'       );
    122         require_once( BP_PLUGIN_DIR . '/bp-users/bp-users-template.php'      );
    123         require_once( BP_PLUGIN_DIR . '/bp-users/bp-users-functions.php'     );
    124         require_once( BP_PLUGIN_DIR . '/bp-users/bp-users-notifications.php' );
    125     }
    126 
    127     /**
    128128     * Setup BuddyBar navigation
    129129     *
     
    136136
    137137        // Add 'User' to the main navigation
    138         bp_core_new_nav_item( array(
     138        $main_nav = array(
    139139            'name'                => __( 'User', 'buddypress' ),
    140140            'slug'                => $this->slug,
    141141            'position'            => 10,
    142             'screen_function'     => 'bp_users_screen_my_users',
     142            'screen_function'     => 'bp_members_screen_my_users',
    143143            'default_subnav_slug' => 'just-me',
    144144            'item_css_id'         => $this->id
    145         ) );
     145        );
    146146
    147147        // Stop if there is no user displayed or logged in
     
    155155
    156156        // Add the subnav items to the users nav item if we are using a theme that supports this
    157         bp_core_new_subnav_item( array(
     157        $sub_nav[] = array(
    158158            'name'            => __( 'Personal', 'buddypress' ),
    159159            'slug'            => 'just-me',
    160160            'parent_url'      => $users_link,
    161161            'parent_slug'     => $this->slug,
    162             'screen_function' => 'bp_users_screen_my_users',
     162            'screen_function' => 'bp_members_screen_my_users',
    163163            'position'        => 10
    164         ) );
     164        );
    165165
    166166        // Additional menu if friends is active
    167167        if ( bp_is_active( 'friends' ) ) {
    168             bp_core_new_subnav_item( array(
     168            $sub_nav[] = array(
    169169                'name'            => __( 'Friends', 'buddypress' ),
    170170                'slug'            => BP_FRIENDS_SLUG,
    171171                'parent_url'      => $users_link,
    172172                'parent_slug'     => $this->slug,
    173                 'screen_function' => 'bp_users_screen_friends',
     173                'screen_function' => 'bp_members_screen_friends',
    174174                'position'        => 20,
    175175                'item_css_id'     => 'users-friends'
    176             ) );
     176            );
    177177        }
    178178
    179179        // Additional menu if groups is active
    180180        if ( bp_is_active( 'groups' ) ) {
    181             bp_core_new_subnav_item( array(
     181            $sub_nav[] = array(
    182182                'name'            => __( 'Groups', 'buddypress' ),
    183183                'slug'            => BP_GROUPS_SLUG,
    184184                'parent_url'      => $users_link,
    185185                'parent_slug'     => $this->slug,
    186                 'screen_function' => 'bp_users_screen_groups',
     186                'screen_function' => 'bp_members_screen_groups',
    187187                'position'        => 30,
    188188                'item_css_id'     => 'users-groups'
    189             ) );
     189            );
    190190        }
    191191
    192192        // Favorite users items
    193         bp_core_new_subnav_item( array(
     193        $sub_nav[] = array(
    194194            'name'            => __( 'Favorites', 'buddypress' ),
    195195            'slug'            => 'favorites',
    196196            'parent_url'      => $users_link,
    197197            'parent_slug'     => $this->slug,
    198             'screen_function' => 'bp_users_screen_favorites',
     198            'screen_function' => 'bp_members_screen_favorites',
    199199            'position'        => 40,
    200200            'item_css_id'     => 'users-favs'
    201         ) );
     201        );
    202202
    203203        // @ mentions
    204         bp_core_new_subnav_item( array(
     204        $sub_nav[] = array(
    205205            'name'            => sprintf( __( '@%s Mentions', 'buddypress' ), $user_login ),
    206206            'slug'            => 'mentions',
    207207            'parent_url'      => $users_link,
    208208            'parent_slug'     => $this->slug,
    209             'screen_function' => 'bp_users_screen_mentions',
     209            'screen_function' => 'bp_members_screen_mentions',
    210210            'position'        => 50,
    211211            'item_css_id'     => 'users-mentions'
    212         ) );
     212        );
    213213
    214214        // Adjust title based on view
    215215        if ( bp_is_users_component() ) {
    216216            if ( bp_is_my_profile() ) {
    217                 $bp->bp_options_title = __( 'My User', 'buddypress' );
     217                $bp->bp_options_title = __( 'You', 'buddypress' );
    218218            } else {
    219219                $bp->bp_options_avatar = bp_core_fetch_avatar( array(
     
    224224            }
    225225        }
     226
     227        parent::_setup_nav( $main_nav, $sub_nav );
    226228    }
    227229}
    228230// Create the users component
    229 $bp->members = new BP_User_Component();
     231$bp->members = new BP_Members_Component();
    230232
    231233?>
Note: See TracChangeset for help on using the changeset viewer.