Endpoints
This commit is contained in:
+20
-6
@@ -1,36 +1,42 @@
|
||||
<?php
|
||||
|
||||
// Namespaces
|
||||
use Pecee\SimpleRouter\SimpleRouter;
|
||||
use Pecee\Http\Request;
|
||||
use Khofmann\Response\Response;
|
||||
|
||||
// Error handling
|
||||
SimpleRouter::error(function (Request $request, Exception $exception) {
|
||||
$code = $exception->getCode();
|
||||
Response::response()->httpCode(is_int($code) ? $code : 500)->json(["message" => $exception->getMessage()]);
|
||||
});
|
||||
|
||||
// Index
|
||||
SimpleRouter::all("/", function () {
|
||||
Response::redirect("docs", 301);
|
||||
});
|
||||
|
||||
/*
|
||||
* Open routes
|
||||
* Open
|
||||
*/
|
||||
// Login
|
||||
SimpleRouter::post("/login", [Api\Login\Login::class, "post"]);
|
||||
// Register and confirm
|
||||
SimpleRouter::post("/register", [Api\Register\Register::class, "post"]);
|
||||
SimpleRouter::patch("/register", [Api\Register\Register::class, "patch"]);
|
||||
|
||||
/*
|
||||
* Optional Auth
|
||||
*/
|
||||
SimpleRouter::group(["middleware" => Khofmann\Auth\OptAuth::class], function () {
|
||||
// List posts with user data
|
||||
// List posts
|
||||
SimpleRouter::get("/posts", [Api\Posts\Posts::class, "get"]);
|
||||
});
|
||||
|
||||
/*
|
||||
* Normal Auth routes
|
||||
* Normal Auth
|
||||
*/
|
||||
|
||||
SimpleRouter::group(["middleware" => Khofmann\Auth\Auth::class], function () {
|
||||
// Logout
|
||||
SimpleRouter::post("/logout", [Api\Logout\Logout::class, "post"]);
|
||||
@@ -38,15 +44,23 @@ SimpleRouter::group(["middleware" => Khofmann\Auth\Auth::class], function () {
|
||||
SimpleRouter::get("/user/{id}", [Api\User\User::class, "get"]);
|
||||
// Update self
|
||||
SimpleRouter::patch("/user/self", [Api\User\User::class, "patchSelf"]);
|
||||
// Update post
|
||||
SimpleRouter::patch("/post/{id}", [Api\Post\Post::class, "patch"]);
|
||||
// Create post
|
||||
SimpleRouter::post("/posts", [Api\Post\Post::class, "post"]);
|
||||
});
|
||||
|
||||
/*
|
||||
* Admin Auth routes
|
||||
* Admin Auth
|
||||
*/
|
||||
|
||||
SimpleRouter::group(["middleware" => Khofmann\Auth\AdminAuth::class], function () {
|
||||
// List users
|
||||
SimpleRouter::get("/users", [Api\Users\Users::class, "get"]);
|
||||
// Update any user
|
||||
// Update user
|
||||
SimpleRouter::patch("/user/{id}", [Api\User\User::class, "patch"]);
|
||||
// Delete any user
|
||||
// Delete user
|
||||
SimpleRouter::delete("/user/{id}", [Api\User\User::class, "delete"]);
|
||||
// Delete post
|
||||
SimpleRouter::delete("/post/{id}", [Api\Post\Post::class, "delete"]);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user