Make WordPress Core


Ignore:
Timestamp:
12/30/2011 11:13:48 PM (13 years ago)
Author:
nacin
Message:

Only allow _multisite_ super admins to demote themselves on a site. props linuxologos, see #19684 for trunk.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-admin/users.php

    r19593 r19640  
    101101        if ( ! current_user_can('promote_user', $id) )
    102102            wp_die(__('You can’t edit that user.'));
    103         // The new role of the current user must also have the promote_users cap or be a super admin
    104         if ( $id == $current_user->ID && ! is_super_admin() && ! $wp_roles->role_objects[ $_REQUEST['new_role'] ]->has_cap('promote_users') ) {
    105             $update = 'err_admin_role';
    106             continue;
     103        // The new role of the current user must also have the promote_users cap or be a multisite super admin
     104        if ( $id == $current_user->ID && ! $wp_roles->role_objects[ $_REQUEST['new_role'] ]->has_cap('promote_users')
     105            && ! ( is_multisite() && is_super_admin() ) ) {
     106                $update = 'err_admin_role';
     107                continue;
    107108        }
    108109
Note: See TracChangeset for help on using the changeset viewer.