roles ), array_keys( $roles ) ); // indexed array of role slugs // Get the roles of the user being shown / edited / created if ( ! empty( $user->roles ) ) { $user_roles = array_intersect( array_values( $user->roles ), array_keys( $roles ) ); // indexed array of role slugs } else { $user_roles = array(); } // Only show roles checkboxes for users that can assign roles to other users if ( current_user_can( 'promote_users', get_current_user_id() ) ) { ?>
|
$role_info ) {
$checkbox_id = $role_slug . '_role';
$role_name = translate_user_role( $role_info['name'] );
if ( ! empty( $user_roles ) && in_array( $role_slug, $user_roles ) ) {
$checked = 'checked="checked"';
} else {
$checked = '';
}
// We disable the 'Administrator' checkbox so it could not be unchecked and cause user to lose administrator priviledges without a way to restore it
$disabled = '';
if ( 'administrator' == $role_slug
&& is_object( $user )
&& is_object( $current_user )
) {
if ( property_exists( $user, 'ID' )
&& property_exists( $current_user, 'ID' )
&& $user->ID == $current_user->ID
) {
$disabled = 'disabled ';
}
}
// Output roles checkboxes
?>
|