Skip to:
Content

BuddyPress.org


Ignore:
Timestamp:
11/07/2014 11:31:26 PM (5 years ago)
Author:
imath
Message:

Improve the way Group's Manage tabs are generated

In BP_Group_Extension->setup_edit_hooks() method, we are now using the bp_core_new_subnav_item() function to generate the Group's manage tab sub navigation.
The action 'groups_admin_tabs' is no more used. However for back compatibility reasons, we will keep on catching this hook inviting the user using a _doing_it_wrong message to now use the BuddyPress Group Extension API instead.

props boonebgorges

Fixes #5994

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/bp-groups/bp-groups-loader.php

    r9027 r9127  
    510510            }
    511511
     512            // If viewing an admin page, create the group admin subnav items
     513            if ( bp_is_group_admin_page() ) {
     514                $admin_link = trailingslashit( $group_link . 'admin' );
     515
     516                // Common params to all nav items
     517                $default_params = array(
     518                    'parent_url'      => $admin_link,
     519                    'parent_slug'     => $this->current_group->slug . '_manage',
     520                    'screen_function' => 'groups_screen_group_admin',
     521                    'user_has_access' => bp_is_item_admin(),
     522                );
     523
     524                $sub_nav[] = array_merge( array(
     525                    'name'            => __( 'Details', 'buddypress' ),
     526                    'slug'            => 'edit-details',
     527                    'position'        => 0,
     528                ), $default_params );
     529
     530                $sub_nav[] = array_merge( array(
     531                    'name'            => __( 'Settings', 'buddypress' ),
     532                    'slug'            => 'group-settings',
     533                    'position'        => 10,
     534                ), $default_params );
     535
     536                if ( ! (int) bp_get_option( 'bp-disable-avatar-uploads' ) && buddypress()->avatar->show_avatars ) {
     537                    $sub_nav[] = array_merge( array(
     538                        'name'        => __( 'Photo', 'buddypress' ),
     539                        'slug'        => 'group-avatar',
     540                        'position'    => 20,
     541                    ), $default_params );
     542                }
     543
     544                $sub_nav[] = array_merge( array(
     545                    'name'            => __( 'Members', 'buddypress' ),
     546                    'slug'            => 'manage-members',
     547                    'position'        => 30,
     548                ), $default_params );
     549
     550                if ( 'private' == $this->current_group->status ) {
     551                    $sub_nav[] = array_merge( array(
     552                        'name'            => __( 'Requests', 'buddypress' ),
     553                        'slug'            => 'membership-requests',
     554                        'position'        => 40,
     555                    ), $default_params );
     556                }
     557
     558                $sub_nav[] = array_merge( array(
     559                    'name'            => __( 'Delete', 'buddypress' ),
     560                    'slug'            => 'delete-group',
     561                    'position'        => 1000,
     562                ), $default_params );
     563            }
     564
    512565            parent::setup_nav( $main_nav, $sub_nav );
    513566        }
Note: See TracChangeset for help on using the changeset viewer.