Skip to:
Content

BuddyPress.org

Ticket #8555: 8555.patch

File 8555.patch, 10.5 KB (added by imath, 3 years ago)
  • src/bp-groups/classes/class-bp-groups-component.php

    diff --git src/bp-groups/classes/class-bp-groups-component.php src/bp-groups/classes/class-bp-groups-component.php
    index 554ebdc94..2010c274d 100644
    class BP_Groups_Component extends BP_Component { 
    215215        }
    216216
    217217        /**
    218          * Set up component global data.
    219          *
    220          * The BP_GROUPS_SLUG constant is deprecated, and only used here for
    221          * backwards compatibility.
    222          *
    223          * @since 1.5.0
    224          *
    225          * @see BP_Component::setup_globals() for a description of arguments.
     218         * Set up additional globals for the component.
    226219         *
    227          * @param array $args See BP_Component::setup_globals() for a description.
     220         * @since 10.0.0
    228221         */
    229         public function setup_globals( $args = array() ) {
     222        public function setup_additional_globals() {
    230223                $bp = buddypress();
    231224
    232                 // Define a slug, if necessary.
    233                 if ( ! defined( 'BP_GROUPS_SLUG' ) ) {
    234                         define( 'BP_GROUPS_SLUG', $this->id );
    235                 }
    236 
    237                 // Global tables for groups component.
    238                 $global_tables = array(
    239                         'table_name'           => $bp->table_prefix . 'bp_groups',
    240                         'table_name_members'   => $bp->table_prefix . 'bp_groups_members',
    241                         'table_name_groupmeta' => $bp->table_prefix . 'bp_groups_groupmeta'
    242                 );
    243 
    244                 // Metadata tables for groups component.
    245                 $meta_tables = array(
    246                         'group' => $bp->table_prefix . 'bp_groups_groupmeta',
    247                 );
    248 
    249                 // Fetch the default directory title.
    250                 $default_directory_titles = bp_core_get_directory_page_default_titles();
    251                 $default_directory_title  = $default_directory_titles[$this->id];
    252 
    253                 // All globals for groups component.
    254                 // Note that global_tables is included in this array.
    255                 $args = array(
    256                         'slug'                  => BP_GROUPS_SLUG,
    257                         'root_slug'             => isset( $bp->pages->groups->slug ) ? $bp->pages->groups->slug : BP_GROUPS_SLUG,
    258                         'has_directory'         => true,
    259                         'directory_title'       => isset( $bp->pages->groups->title ) ? $bp->pages->groups->title : $default_directory_title,
    260                         'notification_callback' => 'groups_format_notifications',
    261                         'search_string'         => _x( 'Search Groups...', 'Component directory search', 'buddypress' ),
    262                         'global_tables'         => $global_tables,
    263                         'meta_tables'           => $meta_tables,
    264                         'block_globals'         => array(
    265                                 'bp/dynamic-groups' => array(
    266                                         'widget_classnames' => array( 'widget_bp_groups_widget', 'buddypress' ),
    267                                 ),
    268                         ),
    269                 );
    270 
    271                 parent::setup_globals( $args );
    272 
    273225                /* Single Group Globals **********************************************/
    274226
    275227                // Are we viewing a single group?
    class BP_Groups_Component extends BP_Component { 
    443395                $this->auto_join = defined( 'BP_DISABLE_AUTO_GROUP_JOIN' ) && BP_DISABLE_AUTO_GROUP_JOIN ? false : true;
    444396        }
    445397
     398        /**
     399         * Set up component global data.
     400         *
     401         * The BP_GROUPS_SLUG constant is deprecated, and only used here for
     402         * backwards compatibility.
     403         *
     404         * @since 1.5.0
     405         *
     406         * @see BP_Component::setup_globals() for a description of arguments.
     407         *
     408         * @param array $args See BP_Component::setup_globals() for a description.
     409         */
     410        public function setup_globals( $args = array() ) {
     411                $bp = buddypress();
     412
     413                // Define a slug, if necessary.
     414                if ( ! defined( 'BP_GROUPS_SLUG' ) ) {
     415                        define( 'BP_GROUPS_SLUG', $this->id );
     416                }
     417
     418                // Global tables for groups component.
     419                $global_tables = array(
     420                        'table_name'           => $bp->table_prefix . 'bp_groups',
     421                        'table_name_members'   => $bp->table_prefix . 'bp_groups_members',
     422                        'table_name_groupmeta' => $bp->table_prefix . 'bp_groups_groupmeta'
     423                );
     424
     425                // Metadata tables for groups component.
     426                $meta_tables = array(
     427                        'group' => $bp->table_prefix . 'bp_groups_groupmeta',
     428                );
     429
     430                // Fetch the default directory title.
     431                $default_directory_titles = bp_core_get_directory_page_default_titles();
     432                $default_directory_title  = $default_directory_titles[$this->id];
     433
     434                // All globals for groups component.
     435                // Note that global_tables is included in this array.
     436                $args = array(
     437                        'slug'                  => BP_GROUPS_SLUG,
     438                        'root_slug'             => isset( $bp->pages->groups->slug ) ? $bp->pages->groups->slug : BP_GROUPS_SLUG,
     439                        'has_directory'         => true,
     440                        'directory_title'       => isset( $bp->pages->groups->title ) ? $bp->pages->groups->title : $default_directory_title,
     441                        'notification_callback' => 'groups_format_notifications',
     442                        'search_string'         => _x( 'Search Groups...', 'Component directory search', 'buddypress' ),
     443                        'global_tables'         => $global_tables,
     444                        'meta_tables'           => $meta_tables,
     445                        'block_globals'         => array(
     446                                'bp/dynamic-groups' => array(
     447                                        'widget_classnames' => array( 'widget_bp_groups_widget', 'buddypress' ),
     448                                ),
     449                        ),
     450                );
     451
     452                parent::setup_globals( $args );
     453
     454                // Additional globals.
     455                $this->setup_additional_globals();
     456        }
     457
    446458        /**
    447459         * Set up canonical stack for this component.
    448460         *
  • src/bp-members/classes/class-bp-members-component.php

    diff --git src/bp-members/classes/class-bp-members-component.php src/bp-members/classes/class-bp-members-component.php
    index a7096bec9..bd078301b 100644
    class BP_Members_Component extends BP_Component { 
    154154                }
    155155        }
    156156
     157        /**
     158         * Set up additional globals for the component.
     159         *
     160         * @since 10.0.0
     161         */
     162        public function setup_additional_globals() {
     163                $bp = buddypress();
     164
     165                /** Logged in user ***************************************************
     166                 */
     167
     168                // The core userdata of the user who is currently logged in.
     169                $bp->loggedin_user->userdata = bp_core_get_core_userdata( bp_loggedin_user_id() );
     170
     171                // Fetch the full name for the logged in user.
     172                $bp->loggedin_user->fullname = isset( $bp->loggedin_user->userdata->display_name ) ? $bp->loggedin_user->userdata->display_name : '';
     173
     174                // Hits the DB on single WP installs so get this separately.
     175                $bp->loggedin_user->is_super_admin = $bp->loggedin_user->is_site_admin = is_super_admin( bp_loggedin_user_id() );
     176
     177                // The domain for the user currently logged in. eg: http://example.com/members/andy.
     178                $bp->loggedin_user->domain = bp_core_get_user_domain( bp_loggedin_user_id() );
     179
     180                /** Displayed user ***************************************************
     181                 */
     182
     183                // The core userdata of the user who is currently being displayed.
     184                $bp->displayed_user->userdata = bp_core_get_core_userdata( bp_displayed_user_id() );
     185
     186                // Fetch the full name displayed user.
     187                $bp->displayed_user->fullname = isset( $bp->displayed_user->userdata->display_name ) ? $bp->displayed_user->userdata->display_name : '';
     188
     189                // The domain for the user currently being displayed.
     190                $bp->displayed_user->domain = bp_core_get_user_domain( bp_displayed_user_id() );
     191
     192                // If A user is displayed, check if there is a front template
     193                if ( bp_get_displayed_user() ) {
     194                        $bp->displayed_user->front_template = bp_displayed_user_get_front_template();
     195                }
     196
     197                /** Initialize the nav for the members component *********************
     198                 */
     199
     200                $this->nav = new BP_Core_Nav();
     201
     202                /** Signup ***********************************************************
     203                 */
     204
     205                $bp->signup = new stdClass;
     206
     207                /** Profiles Fallback ************************************************
     208                 */
     209
     210                if ( ! bp_is_active( 'xprofile' ) ) {
     211                        $bp->profile       = new stdClass;
     212                        $bp->profile->slug = 'profile';
     213                        $bp->profile->id   = 'profile';
     214                }
     215
     216                /** Network Invitations **************************************************
     217                 */
     218
     219                $bp->members->invitations = new stdClass;
     220        }
     221
    157222        /**
    158223         * Set up bp-members global settings.
    159224         *
    class BP_Members_Component extends BP_Component { 
    212277
    213278                parent::setup_globals( $args );
    214279
    215                 /** Logged in user ***************************************************
    216                  */
    217 
    218                 // The core userdata of the user who is currently logged in.
    219                 $bp->loggedin_user->userdata       = bp_core_get_core_userdata( bp_loggedin_user_id() );
    220 
    221                 // Fetch the full name for the logged in user.
    222                 $bp->loggedin_user->fullname       = isset( $bp->loggedin_user->userdata->display_name ) ? $bp->loggedin_user->userdata->display_name : '';
    223 
    224                 // Hits the DB on single WP installs so get this separately.
    225                 $bp->loggedin_user->is_super_admin = $bp->loggedin_user->is_site_admin = is_super_admin( bp_loggedin_user_id() );
    226 
    227                 // The domain for the user currently logged in. eg: http://example.com/members/andy.
    228                 $bp->loggedin_user->domain         = bp_core_get_user_domain( bp_loggedin_user_id() );
    229 
    230                 /** Displayed user ***************************************************
    231                  */
    232 
    233                 // The core userdata of the user who is currently being displayed.
    234                 $bp->displayed_user->userdata = bp_core_get_core_userdata( bp_displayed_user_id() );
    235 
    236                 // Fetch the full name displayed user.
    237                 $bp->displayed_user->fullname = isset( $bp->displayed_user->userdata->display_name ) ? $bp->displayed_user->userdata->display_name : '';
    238 
    239                 // The domain for the user currently being displayed.
    240                 $bp->displayed_user->domain   = bp_core_get_user_domain( bp_displayed_user_id() );
    241 
    242                 // Initialize the nav for the members component.
    243                 $this->nav = new BP_Core_Nav();
    244 
    245                 // If A user is displayed, check if there is a front template
    246                 if ( bp_get_displayed_user() ) {
    247                         $bp->displayed_user->front_template = bp_displayed_user_get_front_template();
    248                 }
    249 
    250                 /** Signup ***********************************************************
    251                  */
    252 
    253                 $bp->signup = new stdClass;
    254 
    255                 /** Profiles Fallback ************************************************
    256                  */
    257 
    258                 if ( ! bp_is_active( 'xprofile' ) ) {
    259                         $bp->profile       = new stdClass;
    260                         $bp->profile->slug = 'profile';
    261                         $bp->profile->id   = 'profile';
    262                 }
    263 
    264                 /** Network Invitations **************************************************
    265                  */
    266 
    267                 $bp->members->invitations = new stdClass;
     280                // Additional globals.
     281                $this->setup_additional_globals();
    268282        }
    269283
    270284        /**
  • src/bp-templates/bp-nouveau/buddypress-functions.php

    diff --git src/bp-templates/bp-nouveau/buddypress-functions.php src/bp-templates/bp-nouveau/buddypress-functions.php
    index 7dd0409af..d3b4d78e6 100644
     
    33 * Functions of BuddyPress's "Nouveau" template pack.
    44 *
    55 * @since 3.0.0
    6  * @version 3.1.0
     6 * @version 10.0.0
    77 *
    88 * @buddypress-template-pack {
    99 *   Template Pack ID:       nouveau
    class BP_Nouveau extends BP_Theme_Compat { 
    7575                }
    7676
    7777                $this->includes_dir  = trailingslashit( $this->dir ) . 'includes/';
    78                 $this->directory_nav = new BP_Core_Nav();
     78                $this->directory_nav = new BP_Core_Nav( bp_get_root_blog_id() );
    7979        }
    8080
    8181        /**