| 1 | Index: wp-admin/user-edit.php |
|---|
| 2 | =================================================================== |
|---|
| 3 | --- wp-admin/user-edit.php (revision 19382) |
|---|
| 4 | +++ wp-admin/user-edit.php (working copy) |
|---|
| 5 | @@ -118,19 +118,15 @@ |
|---|
| 6 | $wpdb->query( $wpdb->prepare( "UPDATE {$wpdb->signups} SET user_email = %s WHERE user_login = %s", $_POST[ 'email' ], $user_login ) ); |
|---|
| 7 | |
|---|
| 8 | // WPMU must delete the user from the current blog if WP added him after editing. |
|---|
| 9 | - $delete_role = false; |
|---|
| 10 | - $blog_prefix = $wpdb->get_blog_prefix(); |
|---|
| 11 | if ( $user_id != $current_user->ID ) { |
|---|
| 12 | - $cap = $wpdb->get_var( "SELECT meta_value FROM {$wpdb->usermeta} WHERE user_id = '{$user_id}' AND meta_key = '{$blog_prefix}capabilities' AND meta_value = 'a:0:{}'" ); |
|---|
| 13 | - if ( !is_network_admin() && null == $cap && $_POST[ 'role' ] == '' ) { |
|---|
| 14 | + $cap = get_user_meta( $user_id, $wpdb->prefix . 'capabilities', true ); |
|---|
| 15 | + if ( !is_network_admin() && empty( $cap ) && empty( $_POST['role'] ) ) { |
|---|
| 16 | $_POST[ 'role' ] = 'contributor'; |
|---|
| 17 | - $delete_role = true; |
|---|
| 18 | + delete_user_meta( $user_id, $wpdb->prefix . 'capabilities' ); |
|---|
| 19 | } |
|---|
| 20 | } |
|---|
| 21 | if ( !isset( $errors ) || ( isset( $errors ) && is_object( $errors ) && false == $errors->get_error_codes() ) ) |
|---|
| 22 | - $errors = edit_user($user_id); |
|---|
| 23 | - if ( $delete_role ) // stops users being added to current blog when they are edited |
|---|
| 24 | - delete_user_meta( $user_id, $blog_prefix . 'capabilities' ); |
|---|
| 25 | + $errors = edit_user( $user_id ); |
|---|
| 26 | |
|---|
| 27 | if ( is_multisite() && is_network_admin() && !IS_PROFILE_PAGE && current_user_can( 'manage_network_options' ) && !isset($super_admins) && empty( $_POST['super_admin'] ) == is_super_admin( $user_id ) ) |
|---|
| 28 | empty( $_POST['super_admin'] ) ? revoke_super_admin( $user_id ) : grant_super_admin( $user_id ); |
|---|