Skip to:
Content

BuddyPress.org


Ignore:
Timestamp:
12/14/2017 01:24:01 PM (7 years ago)
Author:
dcavins
Message:

Use bp_user_can for group-related permissions.

Centralize and de-duplicate permissions checks for group-related functions, like checking whether a user can join a group or send invitations from a group.

Props dcavins, djpaul.

Fixes #7610.

File:
1 edited

Legend:

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

    r11763 r11776  
    21862186
    21872187    if ( $user_id ) {
    2188         // Users with the 'bp_moderate' cap can always send invitations.
    2189         if ( bp_user_can( $user_id, 'bp_moderate' ) ) {
    2190             $can_send_invites = true;
    2191         } else {
    2192             $invite_status = bp_group_get_invite_status( $group_id );
    2193 
    2194             switch ( $invite_status ) {
    2195                 case 'admins' :
    2196                     if ( groups_is_user_admin( $user_id, $group_id ) ) {
    2197                         $can_send_invites = true;
    2198                     }
    2199                     break;
    2200 
    2201                 case 'mods' :
    2202                     if ( groups_is_user_mod( $user_id, $group_id ) || groups_is_user_admin( $user_id, $group_id ) ) {
    2203                         $can_send_invites = true;
    2204                     }
    2205                     break;
    2206 
    2207                 case 'members' :
    2208                     if ( groups_is_user_member( $user_id, $group_id ) ) {
    2209                         $can_send_invites = true;
    2210                     }
    2211                     break;
    2212             }
    2213         }
     2188        $can_send_invites = bp_user_can( $user_id, 'groups_send_invitation', array( 'group_id' => $group_id ) );
    22142189    }
    22152190
Note: See TracChangeset for help on using the changeset viewer.