From a299c24bf700ca1565f30e9f6ed33d5ffe827b01 Mon Sep 17 00:00:00 2001 From: champsupertramp Date: Thu, 15 Sep 2016 10:24:07 +0800 Subject: [PATCH] Fix manage users action and redirection --- admin/core/um-admin-notices.php | 4 ++ admin/core/um-admin-users.php | 73 ++++++++++++++++++++++++++++++--- 2 files changed, 72 insertions(+), 5 deletions(-) diff --git a/admin/core/um-admin-notices.php b/admin/core/um-admin-notices.php index 35d253ff..deb4a1df 100644 --- a/admin/core/um-admin-notices.php +++ b/admin/core/um-admin-notices.php @@ -200,6 +200,10 @@ class UM_Admin_Notices { $messages[0]['content'] = __('Users have been updated.','ultimatemember'); break; + case 'users_role_updated': + $messages[0]['content'] = __('Changed roles.','ultimatemember'); + break; + case 'err_users_updated': $messages[0]['err_content'] = __('Super administrators cannot be modified.','ultimatemember'); $messages[1]['content'] = __('Other users have been updated.','ultimatemember'); diff --git a/admin/core/um-admin-users.php b/admin/core/um-admin-users.php index 932cfdce..5095e67f 100644 --- a/admin/core/um-admin-users.php +++ b/admin/core/um-admin-users.php @@ -193,16 +193,38 @@ class UM_Admin_Users { } if ( $admin_err == 0 ){ - wp_redirect( admin_url('users.php?update=promote') ); + + $uri = admin_url('users.php'); + + $uri = $this->set_redirect_uri( $uri ); + + $uri = add_query_arg( 'update', 'users_role_updated', $uri ); + + wp_redirect( $uri ); + exit; + } else { - wp_redirect( admin_url('users.php?update=err_admin_role') ); + + $uri = admin_url('users.php'); + + $uri = $this->set_redirect_uri( $uri ); + + $uri = add_query_arg( 'update', 'err_admin_role', $uri ); + + wp_redirect( $uri ); + exit; } } else if ( isset($_REQUEST['um_changeit']) && $_REQUEST['um_changeit'] != '' ) { - wp_redirect( admin_url('users.php') ); + $uri = admin_url('users.php'); + + $uri = $this->set_redirect_uri( $uri ); + + wp_redirect( $uri ); + exit; } @@ -233,7 +255,15 @@ class UM_Admin_Users { // Finished. redirect now if ( $admin_err == 0 ){ - wp_redirect( admin_url('users.php?update=users_updated') ); + + $uri = admin_url('users.php'); + + $uri = $this->set_redirect_uri( $uri ); + + $uri = add_query_arg( 'update', 'users_updated', $uri ); + + wp_redirect( $uri ); + exit; } else { wp_redirect( admin_url('users.php?update=err_users_updated') ); @@ -242,7 +272,12 @@ class UM_Admin_Users { } else if ( isset($_REQUEST['um_bulkedit']) && $_REQUEST['um_bulkedit'] != '' ) { - wp_redirect( admin_url('users.php') ); + $uri = admin_url('users.php'); + + $uri = $this->set_redirect_uri( $uri ); + + wp_redirect( $uri ); + exit; } @@ -309,6 +344,10 @@ class UM_Admin_Users { + + + + $value) { + $uri = add_query_arg( 'um_filter_role', $value, $uri ); + } + } + + return $uri; + + } + }