Skip to:
Content

bbPress.org

Changeset 4192


Ignore:
Timestamp:
09/04/2012 09:25:07 AM (14 years ago)
Author:
johnjamesjacoby
Message:

Capabilities:

  • Enforce negative capabilities in user_profile_update() by using add_cap( $cap, false );
  • Remove new-role dance from capability reset, as bbPress capabilities are still added to each individual role as needed.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/plugin/bbp-admin/bbp-users.php

    r4182 r4192  
    110110
    111111                // Load up the user
    112                 $user      = new WP_User( $user_id );
    113                 $user_role = bbp_get_user_role( $user_id );
     112                $user = new WP_User( $user_id );
    114113
    115114                // Either reset caps for role
    … …  
    123122                        }
    124123
    125                         // Maybe use users new role
    126                         if ( ! empty( $_POST['role'] ) ) {
    127                                 $new_role = get_role( $_POST['role'] );
    128                                 $new_role = isset( $new_role->name ) ? $new_role->name : '';
    129 
    130                                 if ( $new_role != $user_role ) {
    131                                         $user_role = $new_role;
    132                                 }
    133                         }
    134 
    135                         // Add back caps for current role
    136                         if ( !empty( $user_role ) ) {
    137                                 foreach ( bbp_get_caps_for_role( $user_role ) as $capability ) {
    138                                         $user->add_cap( $capability, true );
    139                                 }
    140                         }
    141 
    142124                // Or set caps individually
    143125                } else {
    … …  
    145127                        // Loop through capability groups
    146128                        foreach ( bbp_get_capability_groups() as $group ) {
    147 
    148                                 // Loop through capabilities
    149129                                foreach ( bbp_get_capabilities_for_group( $group ) as $capability ) {
    150130
    151131                                        // Maybe add cap
    152132                                        if ( ! empty( $_POST['_bbp_' . $capability] ) && ! $user->has_cap( $capability ) ) {
    153                                                 $user->add_cap( $capability );
     133                                                $user->add_cap( $capability, true );
    154134
    155135                                        // Maybe remove cap
    156136                                        } elseif ( empty( $_POST['_bbp_' . $capability] ) && $user->has_cap( $capability ) ) {
    157                                                 $user->remove_cap( $capability );
     137                                                $user->add_cap( $capability, false );
    158138                                        }
    159139                                }
Note: See TracChangeset for help on using the changeset viewer.