/
routes.php
53 lines (47 loc) · 2.14 KB
/
routes.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
<?php
use Slim\Routing\RouteCollectorProxy;
/** @var Slim\App $app */
$group = $app->group(
'/api',
function (RouteCollectorProxy $group) {
$group->group(
'/security',
static function (RouteCollectorProxy $group) {
$group->any('/login', App\Controllers\Security\Login::class);
$group->any('/logout', App\Controllers\Security\Logout::class);
}
);
$group->any('/user/profile', App\Controllers\User\Profile::class);
$group->get('/image/{id}', App\Controllers\Image::class);
$group->group(
'/admin',
static function (RouteCollectorProxy $group) {
$group->any('/users[/{id}]', App\Controllers\Admin\Users::class);
$group->any('/user-roles[/{id}]', App\Controllers\Admin\UserRoles::class);
$group->any('/categories[/{id}]', App\Controllers\Admin\Categories::class);
$group->any('/products[/{id}]', App\Controllers\Admin\Products::class);
$group->any('/product/{product_id}/files[/{file_id}]', App\Controllers\Admin\Product\Files::class);
$group->any('/orders[/{id}]', App\Controllers\Admin\Orders::class);
}
);
$group->group(
'/web',
static function (RouteCollectorProxy $group) {
$group->any('/categories[/{alias}]', App\Controllers\Web\Categories::class);
$group->any('/categories/{category}/products[/{alias}]', App\Controllers\Web\Category\Products::class);
$group->any('/products', App\Controllers\Web\Products::class);
$group->any('/orders', App\Controllers\Web\Orders::class);
}
);
}
);
if (class_exists('\Clockwork\Clockwork')) {
$group->add(Vesp\Middlewares\Clockwork::class);
$app->get(
'/__clockwork/{id:(?:[0-9-]+|latest)}[/{direction:(?:next|previous)}[/{count:\d+}]]',
Vesp\Controllers\Data\Clockwork::class
);
if (function_exists('xdebug_get_profiler_filename')) {
$app->get('/__clockwork/{id:[0-9-]+}/extended', Vesp\Controllers\Data\Clockwork::class);
}
}