Skip to content

Commit 927408c

Browse files
committed
Enabled providers returns just the keys so we need the supported ones to resolve the instances
1 parent 19938fb commit 927408c

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

class-two-factor-core.php

+5-4
Original file line numberDiff line numberDiff line change
@@ -547,19 +547,20 @@ public static function get_enabled_providers_for_user( $user = null ) {
547547
* @see Two_Factor_Core::get_enabled_providers_for_user()
548548
*
549549
* @param int|WP_User $user Optional. User ID, or WP_User object of the the user. Defaults to current user.
550-
* @return array
550+
* @return array List of provider instances.
551551
*/
552552
public static function get_available_providers_for_user( $user = null ) {
553553
$user = self::fetch_user( $user );
554554
if ( ! $user ) {
555555
return array();
556556
}
557557

558-
$enabled_providers = self::get_enabled_providers_for_user( $user );
558+
$providers = self::get_supported_providers_for_user( $user ); // Returns full objects.
559+
$enabled_providers = self::get_enabled_providers_for_user( $user ); // Returns just the keys.
559560
$configured_providers = array();
560561

561-
foreach ( $enabled_providers as $provider_key => $provider ) {
562-
if ( $provider->is_available_for_user( $user ) ) {
562+
foreach ( $providers as $provider_key => $provider ) {
563+
if ( in_array( $provider_key, $enabled_providers, true ) && $provider->is_available_for_user( $user ) ) {
563564
$configured_providers[ $provider_key ] = $provider;
564565
}
565566
}

0 commit comments

Comments
 (0)