(string $username)
| 756 | } |
| 757 | |
| 758 | public static function revokeRememberTokensForUser(string $username): void |
| 759 | { |
| 760 | $all = self::loadRememberTokenStore(); |
| 761 | if (!$all) { |
| 762 | return; |
| 763 | } |
| 764 | |
| 765 | $changed = false; |
| 766 | foreach ($all as $key => $payload) { |
| 767 | $storedUser = is_array($payload) ? (string)($payload['username'] ?? '') : ''; |
| 768 | if ($storedUser !== '' && strcasecmp($storedUser, $username) === 0) { |
| 769 | unset($all[$key]); |
| 770 | $changed = true; |
| 771 | } |
| 772 | } |
| 773 | |
| 774 | if ($changed) { |
| 775 | self::saveRememberTokenStore($all); |
| 776 | } |
| 777 | } |
| 778 | |
| 779 | protected static function rememberTokenHash(string $token): string |
| 780 | { |
no test coverage detected