diff options
Diffstat (limited to 'src/Controllers/AccountController.php')
| -rwxr-xr-x | src/Controllers/AccountController.php | 18 |
1 files changed, 6 insertions, 12 deletions
diff --git a/src/Controllers/AccountController.php b/src/Controllers/AccountController.php index 858a6b5..8e20880 100755 --- a/src/Controllers/AccountController.php +++ b/src/Controllers/AccountController.php @@ -2,9 +2,9 @@ namespace App\Controllers; -use App\Errors\UnauthorizedError; use App\Models\Device; use App\Models\User; +use Matrix\Responses\ClientAccountWhoamiGetResponse; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\HttpFoundation\JsonResponse; @@ -18,18 +18,12 @@ class AccountController */ public function whoami(Request $request): Response { - $accessToken = str_replace("Bearer ", "", $request->headers->get("authorization") ?: ""); - $user = User::fetchWithAccessToken($accessToken); - - if (empty($user)) { - throw new UnauthorizedError(); - } - + $user = User::authenticateWithRequest($request); $device = Device::fetch(userId: $user->getId()); - return new JsonResponse([ - "device_id" => $device->getId(), - "user_id" => $user->getId(), - ]); + return new JsonResponse(new ClientAccountWhoamiGetResponse( + userId: $user->getId(), + deviceId: $device->getId(), + )); } } |
