userRepository = $userRepository; } /** * Get users for the admin overview. * * @return array */ public function getUsersForAdminOverview(Rsssl_Two_FA_Data_Parameters $params): array { $userCollection = $this->userRepository->getTwoFaUsers($params); $data = []; $negative_count = $params->negative_count; foreach ($userCollection->getUsers() as $twoFaUser) { if (empty($twoFaUser->getRoles())) { $negative_count++; continue; } // Directly use the domain object's getters. $data[] = [ 'ID' => $twoFaUser->getId(), 'user' => $twoFaUser->getUsername(), 'status_for_user' => $twoFaUser->getStatus(), 'rsssl_two_fa_providers' => $twoFaUser->getProvider(), 'user_role' => $twoFaUser->getRoles(), 'can_reset' => $twoFaUser->isStatusResettable(), ]; } return [ 'request_success' => true, 'data' => $data, 'totalRecords' => $userCollection->getTotalRecords() - $negative_count, 'offset' => $params->offset, 'number' => $params->number, 'negative_count' => $negative_count, ]; } }