- fixed PHP notices when there aren't UM custom roles and we get bool variable from get_option( 'um_roles' );

This commit is contained in:
nikitasinelnikov
2020-12-16 13:37:13 +02:00
parent 0ee8878f90
commit 41350e1391
10 changed files with 28 additions and 24 deletions
+1 -1
View File
@@ -173,7 +173,7 @@ if ( ! class_exists( 'um\admin\core\Admin_Enqueue' ) ) {
*/
function load_role_wrapper() {
wp_register_script( 'um_admin_role_wrapper', $this->js_url . 'um-admin-role-wrapper.js', array( 'jquery' ), ultimatemember_version, true );
$localize_roles_data = get_option( 'um_roles' );
$localize_roles_data = get_option( 'um_roles', array() );
wp_localize_script( 'um_admin_role_wrapper', 'um_roles', (array) $localize_roles_data );
wp_enqueue_script( 'um_admin_role_wrapper' );
}
@@ -27,7 +27,7 @@ if ( isset( $_GET['action'] ) ) {
um_js_redirect( $redirect );
}
$um_roles = get_option( 'um_roles' );
$um_roles = get_option( 'um_roles', array() );
$um_custom_roles = array();
foreach ( $role_keys as $k => $role_key ) {
@@ -426,7 +426,7 @@ $ListTable->set_sortable_columns( array(
$users_count = count_users();
$roles = array();
$role_keys = get_option( 'um_roles' );
$role_keys = get_option( 'um_roles', array() );
if ( $role_keys ) {
foreach ( $role_keys as $role_key ) {
+1 -1
View File
@@ -117,7 +117,7 @@ if ( ! empty( $_POST['role'] ) ) {
if ( '' == $error ) {
if ( 'add' == sanitize_key( $_GET['tab'] ) ) {
$roles = get_option( 'um_roles' );
$roles = get_option( 'um_roles', array() );
$roles[] = $id;
update_option( 'um_roles', $roles );
+1 -1
View File
@@ -633,7 +633,7 @@ if ( ! class_exists( 'um\core\Builtin' ) ) {
function set_predefined_fields() {
global $wp_roles;
$role_keys = get_option( 'um_roles' );
$role_keys = get_option( 'um_roles', array() );
if ( ! empty( $role_keys ) && is_array( $role_keys ) ) {
$role_keys = array_map( function( $item ) {
return 'um_' . $item;
+2 -2
View File
@@ -978,7 +978,7 @@ if ( ! class_exists( 'um\core\Fields' ) ) {
if ( strstr( $key, 'role_' ) || $key == 'role' ) {
$field_value = strtolower( UM()->roles()->get_editable_priority_user_role( um_user( 'ID' ) ) );
$role_keys = get_option( 'um_roles' );
$role_keys = get_option( 'um_roles', array() );
if ( ! empty( $role_keys ) ) {
if ( in_array( $field_value, $role_keys ) ) {
@@ -1125,7 +1125,7 @@ if ( ! class_exists( 'um\core\Fields' ) ) {
if ( strstr( $key, 'role_' ) || $key == 'role' ) {
$um_user_value = strtolower( UM()->roles()->get_editable_priority_user_role( um_user( 'ID' ) ) );
$role_keys = get_option( 'um_roles' );
$role_keys = get_option( 'um_roles', array() );
if ( ! empty( $role_keys ) ) {
if ( in_array( $um_user_value, $role_keys ) ) {
+12 -8
View File
@@ -126,10 +126,11 @@ if ( ! class_exists( 'um\core\Roles_Capabilities' ) ) {
*/
function is_role_custom( $role ) {
// User has roles so look for a UM Role one
$role_keys = get_option( 'um_roles' );
$role_keys = get_option( 'um_roles', array() );
if ( empty( $role_keys ) )
if ( empty( $role_keys ) ) {
return false;
}
$role_keys = array_map( function( $item ) {
return 'um_' . $item;
@@ -385,7 +386,7 @@ if ( ! class_exists( 'um\core\Roles_Capabilities' ) ) {
return false;
// User has roles so look for a UM Role one
$um_roles_keys = get_option( 'um_roles' );
$um_roles_keys = get_option( 'um_roles', array() );
if ( ! empty( $um_roles_keys ) ) {
$um_roles_keys = array_map( function( $item ) {
@@ -453,7 +454,7 @@ if ( ! class_exists( 'um\core\Roles_Capabilities' ) ) {
return false;
// User has roles so look for a UM Role one
$um_roles_keys = get_option( 'um_roles' );
$um_roles_keys = get_option( 'um_roles', array() );
if ( ! empty( $um_roles_keys ) ) {
$um_roles_keys = array_map( function( $item ) {
@@ -495,15 +496,17 @@ if ( ! class_exists( 'um\core\Roles_Capabilities' ) ) {
*/
function get_um_user_role( $user_id ) {
// User has roles so look for a UM Role one
$um_roles_keys = get_option( 'um_roles' );
$um_roles_keys = get_option( 'um_roles', array() );
if ( empty( $um_roles_keys ) )
if ( empty( $um_roles_keys ) ) {
return false;
}
$user = get_userdata( $user_id );
if ( empty( $user->roles ) )
if ( empty( $user->roles ) ) {
return false;
}
$um_roles_keys = array_map( function( $item ) {
return 'um_' . $item;
@@ -511,8 +514,9 @@ if ( ! class_exists( 'um\core\Roles_Capabilities' ) ) {
$user_um_roles_array = array_intersect( $um_roles_keys, array_values( $user->roles ) );
if ( empty( $user_um_roles_array ) )
if ( empty( $user_um_roles_array ) ) {
return false;
}
return array_shift( $user_um_roles_array );
}
+3 -3
View File
@@ -729,7 +729,7 @@ if ( ! class_exists( 'um\core\User' ) ) {
public function secondary_role_field( $content, $userdata ) {
$roles = array();
$role_keys = get_option( 'um_roles' );
$role_keys = get_option( 'um_roles', array() );
if ( $role_keys ) {
foreach ( $role_keys as $role_key ) {
$role_meta = get_option( "um_role_{$role_key}_meta" );
@@ -1858,12 +1858,12 @@ if ( ! class_exists( 'um\core\User' ) ) {
//if isset roles argument validate role to properly for security reasons
if ( isset( $args['role'] ) ) {
global $wp_roles;
$um_roles = get_option( 'um_roles' );
$um_roles = get_option( 'um_roles', array() );
if ( ! empty( $um_roles ) ) {
$role_keys = array_map( function( $item ) {
return 'um_' . $item;
}, get_option( 'um_roles' ) );
}, $um_roles );
} else {
$role_keys = array();
}
+3 -3
View File
@@ -380,7 +380,7 @@ function um_user_edit_profile( $args ) {
global $wp_roles;
$role_keys = array_map( function( $item ) {
return 'um_' . $item;
}, get_option( 'um_roles' ) );
}, get_option( 'um_roles', array() ) );
$exclude_roles = array_diff( array_keys( $wp_roles->roles ), array_merge( $role_keys, array( 'subscriber' ) ) );
if ( ! in_array( $args['submitted']['role'], $exclude_roles ) ) {
@@ -400,7 +400,7 @@ function um_user_edit_profile( $args ) {
global $wp_roles;
$role_keys = array_map( function( $item ) {
return 'um_' . $item;
}, get_option( 'um_roles' ) );
}, get_option( 'um_roles', array() ) );
$exclude_roles = array_diff( array_keys( $wp_roles->roles ), array_merge( $role_keys, array( 'subscriber' ) ) );
if ( ! in_array( $args['submitted']['role'], $exclude_roles ) ) {
@@ -598,7 +598,7 @@ function um_restore_default_roles( $user_id, $args, $to_update ) {
$role_keys = array_map( function( $item ) {
return 'um_' . $item;
}, get_option( 'um_roles' ) );
}, get_option( 'um_roles', array() ) );
$leave_roles = array_diff( $args['roles_before_upgrade'], array_merge( $role_keys, array( 'subscriber' ) ) );
+2 -2
View File
@@ -400,12 +400,12 @@ function um_submit_form_register( $args ) {
//get user role from field Role dropdown or radio
if ( isset( $args['role'] ) ) {
global $wp_roles;
$um_roles = get_option( 'um_roles' );
$um_roles = get_option( 'um_roles', array() );
if ( ! empty( $um_roles ) ) {
$role_keys = array_map( function( $item ) {
return 'um_' . $item;
}, get_option( 'um_roles' ) );
}, $um_roles );
} else {
$role_keys = array();
}
+1 -1
View File
@@ -69,7 +69,7 @@ if ( ! empty( $delete_options ) ) {
}
//remove user role meta
$role_keys = get_option( 'um_roles' );
$role_keys = get_option( 'um_roles', array() );
if ( $role_keys ) {
foreach ( $role_keys as $role_key ) {
delete_option( 'um_role_' . $role_key . '_meta' );