|
- <?php
-
- declare(strict_types=1);
-
- use App\Controllers\AuthController;
- use App\Controllers\BoardsController;
- use App\Controllers\CardsController;
- use App\Controllers\ColumnsController;
- use App\Controllers\HomeController;
- use App\Controllers\SwimLanesController;
-
- // Home — redirects to /boards
- $router->get('/', [HomeController::class, 'index']);
-
- // Boards
- $router->get('/boards', [BoardsController::class, 'index']);
- $router->get('/boards/create', [BoardsController::class, 'create']);
- $router->post('/boards', [BoardsController::class, 'store']);
- $router->get('/board/{slug}', [BoardsController::class, 'show']);
- $router->get('/board/{slug}/edit', [BoardsController::class, 'edit']);
- $router->post('/board/{slug}/update', [BoardsController::class, 'update']);
- $router->post('/board/{slug}/delete', [BoardsController::class, 'destroy']);
-
- // Cards (JSON API)
- $router->post('/cards', [CardsController::class, 'store']);
- $router->post('/cards/{id}/move', [CardsController::class, 'move']);
- $router->post('/cards/{id}/delete', [CardsController::class, 'destroy']);
- $router->post('/cards/{id}', [CardsController::class, 'update']);
-
- // Columns (JSON API) — /columns/reorder MUST be before /columns/{id}
- $router->post('/columns/reorder', [ColumnsController::class, 'reorder']);
- $router->post('/columns/{id}/delete', [ColumnsController::class, 'destroy']);
- $router->post('/columns/{id}', [ColumnsController::class, 'update']);
- $router->post('/columns', [ColumnsController::class, 'store']);
-
- // Swim lanes (JSON API) — /swimlanes/reorder MUST be before /swimlanes/{id}
- $router->post('/swimlanes/reorder', [SwimLanesController::class, 'reorder']);
- $router->post('/swimlanes/{id}/delete', [SwimLanesController::class, 'destroy']);
- $router->post('/swimlanes/{id}', [SwimLanesController::class, 'update']);
- $router->post('/swimlanes', [SwimLanesController::class, 'store']);
-
- // Auth (Keycloak SSO)
- $router->get('/auth/login', [AuthController::class, 'login']);
- $router->get('/auth/callback', [AuthController::class, 'callback']);
- $router->get('/auth/logout', [AuthController::class, 'logout']);
|