Skip to:
Content

BuddyPress.org


Ignore:
Timestamp:
04/04/2023 01:06:03 AM (2 years ago)
Author:
imath
Message:

Use the BP Rewrites API to generate single Groups item links

  • Introduce the bp_groups_get_path_chunks() function to build BP Rewrites arguments using a regular array.
  • Improve bp_members_get_path_chunks() so that it avoids looking for a custom slug when the chunk is a numeric value.
  • Introduce the bp_get_group_manage_url() function to build Group's front-end Admin URLs using BP Rewrites.
  • Deprecate bp_group_admin_permalink() & bp_get_group_admin_permalink() in favor of bp_group_manage_url() & bp_get_group_manage_url().
  • Replace all remaining usage of bp_get_group_permalink() in favor of bp_get_group_url() or bp_get_group_manage_url().

Props r-a-y, johnjamesjacoby, boonebgorges

Closes https://github.com/buddypress/buddypress/pull/81
See #4954

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/bp-groups/screens/single/admin/manage-members.php

    r11923 r13446  
    1515function groups_screen_group_admin_manage_members() {
    1616
    17     if ( 'manage-members' != bp_get_group_current_admin_tab() )
     17    if ( 'manage-members' != bp_get_group_current_admin_tab() ) {
    1818        return false;
     19    }
    1920
    20     if ( ! bp_is_item_admin() )
     21    if ( ! bp_is_item_admin() ) {
    2122        return false;
     23    }
    2224
    23     $bp = buddypress();
     25    $bp       = buddypress();
     26    $redirect = bp_get_group_manage_url(
     27        groups_get_current_group(),
     28        bp_groups_get_path_chunks( array( 'manage-members' ), 'manage' )
     29    );
    2430
    2531    if ( bp_action_variable( 1 ) && bp_action_variable( 2 ) && bp_action_variable( 3 ) ) {
     
    2935
    3036            // Check the nonce first.
    31             if ( !check_admin_referer( 'groups_promote_member' ) )
     37            if ( ! check_admin_referer( 'groups_promote_member' ) ) {
    3238                return false;
     39            }
    3340
    3441            // Promote a user.
    35             if ( !groups_promote_member( $user_id, $bp->groups->current_group->id, $status ) )
     42            if ( ! groups_promote_member( $user_id, $bp->groups->current_group->id, $status ) ) {
    3643                bp_core_add_message( __( 'There was an error when promoting that user. Please try again.', 'buddypress' ), 'error' );
    37             else
     44            } else {
    3845                bp_core_add_message( __( 'User promoted successfully', 'buddypress' ) );
     46            }
    3947
    4048            /**
     
    4856            do_action( 'groups_promoted_member', $user_id, $bp->groups->current_group->id );
    4957
    50             bp_core_redirect( bp_get_group_permalink( groups_get_current_group() ) . 'admin/manage-members/' );
     58            bp_core_redirect( $redirect );
    5159        }
    5260    }
     
    5765
    5866            // Check the nonce first.
    59             if ( !check_admin_referer( 'groups_demote_member' ) )
     67            if ( ! check_admin_referer( 'groups_demote_member' ) ) {
    6068                return false;
     69            }
    6170
    6271            // Stop sole admins from abandoning their group.
    6372            $group_admins = groups_get_group_admins( $bp->groups->current_group->id );
    64             if ( 1 == count( $group_admins ) && $group_admins[0]->user_id == $user_id )
     73            if ( 1 == count( $group_admins ) && $group_admins[0]->user_id == $user_id ) {
    6574                bp_core_add_message( __( 'This group must have at least one admin', 'buddypress' ), 'error' );
    6675
    67             // Demote a user.
    68             elseif ( !groups_demote_member( $user_id, $bp->groups->current_group->id ) )
     76                // Demote a user.
     77            } elseif ( ! groups_demote_member( $user_id, $bp->groups->current_group->id ) ) {
    6978                bp_core_add_message( __( 'There was an error when demoting that user. Please try again.', 'buddypress' ), 'error' );
    70             else
     79            } else {
    7180                bp_core_add_message( __( 'User demoted successfully', 'buddypress' ) );
     81            }
    7282
    7383            /**
     
    8191            do_action( 'groups_demoted_member', $user_id, $bp->groups->current_group->id );
    8292
    83             bp_core_redirect( bp_get_group_permalink( groups_get_current_group() ) . 'admin/manage-members/' );
     93            bp_core_redirect( $redirect );
    8494        }
    8595
     
    8898
    8999            // Check the nonce first.
    90             if ( !check_admin_referer( 'groups_ban_member' ) )
     100            if ( ! check_admin_referer( 'groups_ban_member' ) ) {
    91101                return false;
     102            }
    92103
    93104            // Ban a user.
    94             if ( !groups_ban_member( $user_id, $bp->groups->current_group->id ) )
     105            if ( ! groups_ban_member( $user_id, $bp->groups->current_group->id ) ) {
    95106                bp_core_add_message( __( 'There was an error when banning that user. Please try again.', 'buddypress' ), 'error' );
    96             else
     107            } else {
    97108                bp_core_add_message( __( 'User banned successfully', 'buddypress' ) );
     109            }
    98110
    99111            /**
     
    107119            do_action( 'groups_banned_member', $user_id, $bp->groups->current_group->id );
    108120
    109             bp_core_redirect( bp_get_group_permalink( groups_get_current_group() ) . 'admin/manage-members/' );
     121            bp_core_redirect( $redirect );
    110122        }
    111123
     
    114126
    115127            // Check the nonce first.
    116             if ( !check_admin_referer( 'groups_unban_member' ) )
     128            if ( ! check_admin_referer( 'groups_unban_member' ) ) {
    117129                return false;
     130            }
    118131
    119132            // Remove a ban for user.
    120             if ( !groups_unban_member( $user_id, $bp->groups->current_group->id ) )
     133            if ( ! groups_unban_member( $user_id, $bp->groups->current_group->id ) ) {
    121134                bp_core_add_message( __( 'There was an error when unbanning that user. Please try again.', 'buddypress' ), 'error' );
    122             else
     135            } else {
    123136                bp_core_add_message( __( 'User ban removed successfully', 'buddypress' ) );
     137            }
    124138
    125139            /**
     
    133147            do_action( 'groups_unbanned_member', $user_id, $bp->groups->current_group->id );
    134148
    135             bp_core_redirect( bp_get_group_permalink( groups_get_current_group() ) . 'admin/manage-members/' );
     149            bp_core_redirect( $redirect );
    136150        }
    137151
     
    140154
    141155            // Check the nonce first.
    142             if ( !check_admin_referer( 'groups_remove_member' ) )
     156            if ( ! check_admin_referer( 'groups_remove_member' ) ) {
    143157                return false;
     158            }
    144159
    145160            // Remove a user.
    146             if ( !groups_remove_member( $user_id, $bp->groups->current_group->id ) )
     161            if ( ! groups_remove_member( $user_id, $bp->groups->current_group->id ) ) {
    147162                bp_core_add_message( __( 'There was an error removing that user from the group. Please try again.', 'buddypress' ), 'error' );
    148             else
     163            } else {
    149164                bp_core_add_message( __( 'User removed successfully', 'buddypress' ) );
     165            }
    150166
    151167            /**
     
    159175            do_action( 'groups_removed_member', $user_id, $bp->groups->current_group->id );
    160176
    161             bp_core_redirect( bp_get_group_permalink( groups_get_current_group() ) . 'admin/manage-members/' );
     177            bp_core_redirect( $redirect );
    162178        }
    163179    }
Note: See TracChangeset for help on using the changeset viewer.