summaryrefslogtreecommitdiff
path: root/src/Router/routes_client_server.php
diff options
context:
space:
mode:
authorDaniel Weipert <git@mail.dweipert.de>2025-08-14 14:37:56 +0200
committerDaniel Weipert <git@mail.dweipert.de>2025-08-14 14:37:56 +0200
commitc135fcf9041c604b32827a1cb027010bca5915ab (patch)
tree95a2331d5f0bc4a736aa0e716330c39b3fa1ea26 /src/Router/routes_client_server.php
parent3f4b51b99a4f4dc41dbdce7f34afe7e15d3d426e (diff)
POST login possible
Diffstat (limited to 'src/Router/routes_client_server.php')
-rw-r--r--src/Router/routes_client_server.php41
1 files changed, 41 insertions, 0 deletions
diff --git a/src/Router/routes_client_server.php b/src/Router/routes_client_server.php
new file mode 100644
index 0000000..eff0be5
--- /dev/null
+++ b/src/Router/routes_client_server.php
@@ -0,0 +1,41 @@
+<?php
+
+namespace App\Router;
+
+use App\Controllers\LoginController;
+use App\Controllers\ServerDiscoveryController;
+use App\Controllers\ServerImplementationController;
+use Symfony\Component\Routing\Loader\Configurator\RouteConfigurator;
+
+return function (RouteConfigurator $routes): void
+{
+ $routes
+ ->add("well_known_matrix_client", "/.well-known/matrix/client")
+ ->controller([ServerDiscoveryController::class, "client"])
+ ->methods(["GET"]);
+
+ $routes
+ ->add("well_known_matrix_support", "/.well-known/matrix/support")
+ ->controller([ServerDiscoveryController::class, "support"])
+ ->methods(["GET"]);
+
+ $routes
+ ->add("matrix_client_versions", "/_matrix/client/versions")
+ ->controller([ServerImplementationController::class, "versions"])
+ ->methods(["GET"]);
+
+ $supportedLoginTypes = [LoginController::class, "supportedLoginTypes"];
+ $routes
+ ->add("matrix_client_r0_login_types", "/_matrix/client/r0/login")
+ ->controller($supportedLoginTypes)
+ ->methods(["GET"]);
+ $routes
+ ->add("matrix_client_v3_login_types", "/_matrix/client/v3/login")
+ ->controller($supportedLoginTypes)
+ ->methods(["GET"]);
+
+ $routes
+ ->add("matrix_client_v3_login", "/_matrix/client/v3/login")
+ ->controller([LoginController::class, "login"])
+ ->methods(["POST"]);
+};