Skip to content

Commit d303799

Browse files
committed
Refactor user ID fetching
1 parent 102d45e commit d303799

File tree

1 file changed

+15
-9
lines changed

1 file changed

+15
-9
lines changed

src/Super_Admin_Command.php

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -198,14 +198,6 @@ static function ( $v ) use ( $flipped_user_logins ) {
198198
WP_CLI::error( 'No valid user logins given to revoke super-admin privileges from.' );
199199
}
200200

201-
// Ensure we always have an ID for all logins.
202-
foreach ( $user_logins as $user_login ) {
203-
if ( ! array_key_exists( $user_login, $user_ids ) ) {
204-
$user = get_user_by( 'login', $user_login );
205-
$user_ids[ $user_login ] = $user->ID;
206-
}
207-
}
208-
209201
$update_super_admins = array_diff( $super_admins, $user_logins );
210202
if ( $update_super_admins === $super_admins ) {
211203
WP_CLI::error( $user_logins_count > 1 ? 'None of the given users is a super admin.' : 'The given user is not a super admin.' );
@@ -226,8 +218,22 @@ static function ( $v ) use ( $flipped_user_logins ) {
226218
WP_CLI::success( $msg );
227219

228220
$removed_logins = array_intersect( $user_logins, $super_admins );
221+
229222
foreach ( $removed_logins as $user_login ) {
230-
do_action( 'revoked_super_admin', (int) $user_ids[ $user_login ] ); // phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedHooknameFound
223+
$user_id = null;
224+
225+
if ( array_key_exists( $user_login, $user_ids ) ) {
226+
$user_id = $user_ids[ $user_login ];
227+
} else {
228+
$user = get_user_by( 'login', $user_login );
229+
if ( $user instanceof WP_User ) {
230+
$user_id = $user->ID;
231+
}
232+
}
233+
234+
if ( null !== $user_id ) {
235+
do_action( 'revoked_super_admin', (int) $user_ids[ $user_login ] ); // phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedHooknameFound
236+
}
231237
}
232238
}
233239

0 commit comments

Comments
 (0)