* Retrieve all users (username + role). */
()
| 226 | * Retrieve all users (username + role). |
| 227 | */ |
| 228 | public static function getAllUsers() |
| 229 | { |
| 230 | self::ensureUserCaseMigration(); |
| 231 | $usersFile = USERS_DIR . USERS_FILE; |
| 232 | $users = []; |
| 233 | if (file_exists($usersFile)) { |
| 234 | $lines = file($usersFile, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); |
| 235 | foreach ($lines as $line) { |
| 236 | $parts = explode(':', trim($line)); |
| 237 | if (count($parts) >= 3 && preg_match(REGEX_USER, $parts[0])) { |
| 238 | $users[] = [ |
| 239 | "username" => $parts[0], |
| 240 | "role" => trim($parts[2]) |
| 241 | ]; |
| 242 | } |
| 243 | } |
| 244 | } |
| 245 | return $users; |
| 246 | } |
| 247 | |
| 248 | /** |
| 249 | * Return the first admin username from users.txt order. |
no test coverage detected