From 14372e816bfd1fda8e5332162a23b44c6ed6b4ce Mon Sep 17 00:00:00 2001 From: Robin Cornett Date: Fri, 27 Nov 2020 14:13:44 -0500 Subject: [PATCH] Fix user fallback if user is not in initial batch for user_dropdown #8224 --- includes/class-edd-html-elements.php | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/includes/class-edd-html-elements.php b/includes/class-edd-html-elements.php index 88d54db36b3..1293f4bd8e8 100755 --- a/includes/class-edd-html-elements.php +++ b/includes/class-edd-html-elements.php @@ -339,21 +339,21 @@ public function user_dropdown( $args = array() ) { $options[0] = __( 'No users found', 'easy-digital-downloads' ); } + $selected = $args['selected']; + if ( ! is_array( $selected ) ) { + $selected = array( $selected ); + } // If a selected user has been specified, we need to ensure it's in the initial list of user displayed - if( ! empty( $args['selected'] ) ) { - - if( ! array_key_exists( $args['selected'], $options ) ) { - - $user = get_userdata( $args['selected'] ); - - if( $user ) { - - $options[ absint( $args['selected'] ) ] = esc_html( $user->display_name ); + if ( ! empty( $selected ) ) { + foreach ( $selected as $selected_user ) { + if ( ! array_key_exists( $selected_user, $options ) ) { + $user = get_userdata( $selected_user ); + if ( $user ) { + $options[ absint( $args['selected'] ) ] = esc_html( $user->display_name ); + } } - } - } $output = $this->select( array(