diff options
Diffstat (limited to 'src/Controllers/UserController.php')
-rwxr-xr-x | src/Controllers/UserController.php | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/src/Controllers/UserController.php b/src/Controllers/UserController.php new file mode 100755 index 0000000..a056e1d --- /dev/null +++ b/src/Controllers/UserController.php @@ -0,0 +1,32 @@ +<?php + +namespace App\Controllers; + +use App\Errors\UnauthorizedError; +use App\Models\User; +use Symfony\Component\HttpFoundation\Request; +use Symfony\Component\HttpFoundation\Response; +use Symfony\Component\HttpFoundation\JsonResponse; + +class UserController +{ + /** + * POST /_matrix/client/r0/user/{userId}/filter + * POST /_matrix/client/v3/user/{userId}/filter + * + * @see https://spec.matrix.org/v1.16/client-server-api/#post_matrixclientv3useruseridfilter + */ + public function uploadFilter(Request $request): Response + { + $accessToken = str_replace("Bearer ", "", $request->headers->get("authorization") ?: ""); + $user = User::fetchWithAccessToken($accessToken); + + if (empty($user)) { + throw new UnauthorizedError(); + } + + return new JsonResponse([ + "filter_id" => "1234", + ]); + } +} |