This commit is contained in:
Nikita Sinelnikov
2023-03-27 17:29:19 +03:00
parent 4af87d9834
commit 4cae48b500
+5 -5
View File
@@ -84,19 +84,19 @@ if ( ! class_exists( 'um\admin\core\Admin_Users' ) ) {
*/
function map_caps_by_role( $allcaps, $cap, $args, $user ) {
if ( isset( $cap[0] ) && $cap[0] == 'edit_users' ) {
if ( ! user_can( $args[1], 'administrator' ) && $args[0] == 'edit_user' ) {
if ( ! UM()->roles()->um_current_user_can( 'edit', $args[2] ) ) {
if ( isset( $args[0] ) && isset( $args[1] ) && ! user_can( $args[1], 'administrator' ) && $args[0] == 'edit_user' ) {
if ( isset( $args[2] ) && ! UM()->roles()->um_current_user_can( 'edit', $args[2] ) ) {
$allcaps[ $cap[0] ] = false;
}
}
} elseif ( isset( $cap[0] ) && $cap[0] == 'delete_users' ) {
if ( ! user_can( $args[1], 'administrator' ) && $args[0] == 'delete_user' ) {
if ( ! UM()->roles()->um_current_user_can( 'delete', $args[2] ) ) {
if ( isset( $args[0] ) && isset( $args[1] ) && ! user_can( $args[1], 'administrator' ) && $args[0] == 'delete_user' ) {
if ( isset( $args[2] ) && ! UM()->roles()->um_current_user_can( 'delete', $args[2] ) ) {
$allcaps[ $cap[0] ] = false;
}
}
} elseif ( isset( $cap[0] ) && $cap[0] == 'list_users' ) {
if ( ! user_can( $args[1], 'administrator' ) && $args[0] == 'list_users' ) {
if ( isset( $args[0] ) && isset( $args[1] ) && ! user_can( $args[1], 'administrator' ) && $args[0] == 'list_users' ) {
if ( ! um_user( 'can_view_all' ) ) {
$allcaps[ $cap[0] ] = false;
}