Skip to:
Content

bbPress.org

Changeset 5030


Ignore:
Timestamp:
07/15/2013 02:57:39 PM (12 years ago)
Author:
johnjamesjacoby
Message:

Remove hard-coded negative capabilities from bbp_get_caps_for_role() for all roles expect 'Blocked'. Prevents over-aggressively and explicitly disallowing role based capabilities, and allows role manager plugins to more effectively manipulate bbPress user capabilities.

Fixes bug where negative user capabilities could not be overridden if negative caps were saved to all_caps array. See #1939.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/includes/core/capabilities.php

    r5002 r5030  
    9696                'publish_forums'        => true,
    9797                'edit_forums'           => true,
    98                 'edit_others_forums'    => false,
    99                 'delete_forums'         => false,
    100                 'delete_others_forums'  => false,
    10198                'read_private_forums'   => true,
    10299                'read_hidden_forums'    => true,
     
    133130                // Primary caps
    134131                'spectate'              => true,
     132            );
     133
     134            break;
     135
     136        // Explicitly blocked
     137        case bbp_get_blocked_role() :
     138            $caps = array(
     139
     140                // Primary caps
     141                'spectate'              => false,
    135142                'participate'           => false,
    136143                'moderate'              => false,
     
    172179            break;
    173180
    174         // Explicitly blocked
    175         case bbp_get_blocked_role() :
    176             $caps = array(
    177 
    178                 // Primary caps
    179                 'spectate'              => false,
    180                 'participate'           => false,
    181                 'moderate'              => false,
    182                 'throttle'              => false,
    183                 'view_trash'            => false,
    184 
    185                 // Forum caps
    186                 'publish_forums'        => false,
    187                 'edit_forums'           => false,
    188                 'edit_others_forums'    => false,
    189                 'delete_forums'         => false,
    190                 'delete_others_forums'  => false,
    191                 'read_private_forums'   => false,
    192                 'read_hidden_forums'    => false,
    193 
    194                 // Topic caps
    195                 'publish_topics'        => false,
    196                 'edit_topics'           => false,
    197                 'edit_others_topics'    => false,
    198                 'delete_topics'         => false,
    199                 'delete_others_topics'  => false,
    200                 'read_private_topics'   => false,
    201 
    202                 // Reply caps
    203                 'publish_replies'       => false,
    204                 'edit_replies'          => false,
    205                 'edit_others_replies'   => false,
    206                 'delete_replies'        => false,
    207                 'delete_others_replies' => false,
    208                 'read_private_replies'  => false,
    209 
    210                 // Topic tag caps
    211                 'manage_topic_tags'     => false,
    212                 'edit_topic_tags'       => false,
    213                 'delete_topic_tags'     => false,
    214                 'assign_topic_tags'     => false,
    215             );
    216 
    217             break;
    218 
    219181        // Participant/Default
    220182        case bbp_get_participant_role() :
     
    225187                'spectate'              => true,
    226188                'participate'           => true,
    227                 'moderate'              => false,
    228                 'throttle'              => false,
    229                 'view_trash'            => false,
    230189
    231190                // Forum caps
    232                 'publish_forums'        => false,
    233                 'edit_forums'           => false,
    234                 'edit_others_forums'    => false,
    235                 'delete_forums'         => false,
    236                 'delete_others_forums'  => false,
    237191                'read_private_forums'   => true,
    238                 'read_hidden_forums'    => false,
    239192
    240193                // Topic caps
    241194                'publish_topics'        => true,
    242195                'edit_topics'           => true,
    243                 'edit_others_topics'    => false,
    244                 'delete_topics'         => false,
    245                 'delete_others_topics'  => false,
    246                 'read_private_topics'   => false,
    247196
    248197                // Reply caps
    249198                'publish_replies'       => true,
    250199                'edit_replies'          => true,
    251                 'edit_others_replies'   => false,
    252                 'delete_replies'        => false,
    253                 'delete_others_replies' => false,
    254                 'read_private_replies'  => false,
    255200
    256201                // Topic tag caps
    257                 'manage_topic_tags'     => false,
    258                 'edit_topic_tags'       => false,
    259                 'delete_topic_tags'     => false,
    260202                'assign_topic_tags'     => true,
    261203            );
Note: See TracChangeset for help on using the changeset viewer.