From 82ceeca5dea288583477b3ed47a4dc35cadf9928 Mon Sep 17 00:00:00 2001 From: Andrew Nacin Date: Fri, 27 Apr 2012 23:13:39 +0000 Subject: [PATCH] After adding a user, take them back to users.php with an 'Edit user' link in the message. This removes the (possibly ineffective) search from the redirect, as well as the URL hash that will get covered up by the toolbar. fixes #19470. props merty and SergeyBiryukov for initial patches. git-svn-id: https://develop.svn.wordpress.org/trunk@20631 602fd350-edb4-49c9-b593-d223f7449a82 --- wp-admin/user-new.php | 8 +++----- wp-admin/users.php | 10 ++++++++-- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/wp-admin/user-new.php b/wp-admin/user-new.php index b17b0f72cb..4eff50eacb 100644 --- a/wp-admin/user-new.php +++ b/wp-admin/user-new.php @@ -98,12 +98,10 @@ Please click the following link to confirm the invite: if ( is_wp_error( $user_id ) ) { $add_user_errors = $user_id; } else { - if ( current_user_can('edit_users') ) { - $new_user_login = apply_filters('pre_user_login', sanitize_user(stripslashes($_REQUEST['user_login']), true)); - $redirect = 'users.php?usersearch='. urlencode($new_user_login) . '&update=add' . '#user-' . $user_id; - } else { + if ( current_user_can( 'list_users' ) ) + $redirect = 'users.php?update=add&id=' . $user_id; + else $redirect = add_query_arg( 'update', 'add', 'user-new.php' ); - } wp_redirect( $redirect ); die(); } diff --git a/wp-admin/users.php b/wp-admin/users.php index 593b9907fb..cbd808e0a0 100644 --- a/wp-admin/users.php +++ b/wp-admin/users.php @@ -353,10 +353,16 @@ default: case 'del': case 'del_many': $delete_count = isset($_GET['delete_count']) ? (int) $_GET['delete_count'] : 0; - $messages[] = '

' . sprintf(_n('%s user deleted', '%s users deleted', $delete_count), $delete_count) . '

'; + $messages[] = '

' . sprintf( _n( 'User deleted.', '%s users deleted.', $delete_count ), number_format_i18n( $delete_count ) ) . '

'; break; case 'add': - $messages[] = '

' . __('New user created.') . '

'; + if ( isset( $_GET['id'] ) && ( $user_id = $_GET['id'] ) && current_user_can( 'edit_user', $user_id ) ) { + $messages[] = '

' . sprintf( __( 'New user created. Edit user' ), + esc_url( add_query_arg( 'wp_http_referer', urlencode( stripslashes( $_SERVER['REQUEST_URI'] ) ), + self_admin_url( 'user-edit.php?user_id=' . $user_id ) ) ) ) . '

'; + } else { + $messages[] = '

' . __( 'New user created.' ) . '

'; + } break; case 'promote': $messages[] = '

' . __('Changed roles.') . '

';