Skip to content

Commit 98e4aed

Browse files
committed
feat(routes): improve controllers handling in routes for performance enhancements
1 parent 1fa0df0 commit 98e4aed

File tree

2 files changed

+80
-92
lines changed

2 files changed

+80
-92
lines changed

dependencies.php

Lines changed: 1 addition & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -13,18 +13,7 @@
1313

1414
use Flextype\Component\I18n\I18n;
1515
use function Flextype\Component\I18n\__;
16-
use Flextype\Plugin\Admin\Controllers\DashboardController;
17-
use Flextype\Plugin\Admin\Controllers\SettingsController;
18-
use Flextype\Plugin\Admin\Controllers\PluginsController;
19-
use Flextype\Plugin\Admin\Controllers\EntriesController;
20-
use Flextype\Plugin\Admin\Controllers\ToolsController;
21-
use Flextype\Plugin\Admin\Controllers\ApiController;
22-
use Flextype\Plugin\Admin\Controllers\ApiImagesController;
23-
use Flextype\Plugin\Admin\Controllers\ApiRegistryController;
24-
use Flextype\Plugin\Admin\Controllers\ApiEntriesController;
25-
use Flextype\Plugin\Admin\Controllers\ApiFilesController;
26-
use Flextype\Plugin\Admin\Controllers\ApiFoldersController;
27-
use Flextype\Plugin\Admin\Controllers\ApiAccessController;
16+
2817

2918
// Set Default Admin locale
3019
I18n::$locale = flextype('registry')->get('flextype.settings.locale');
@@ -49,16 +38,3 @@
4938
flextype('registry')->set('assets.admin.js',
5039
array_merge($_admin_js,
5140
['project/plugins/admin/assets/dist/js/admin-vendor-build.min.js']));
52-
53-
flextype()->container()['DashboardController'] = fn() => new DashboardController();
54-
flextype()->container()['SettingsController'] = fn() => new SettingsController();
55-
flextype()->container()['PluginsController'] = fn() => new PluginsController();
56-
flextype()->container()['EntriesController'] = fn() => new EntriesController();
57-
flextype()->container()['ToolsController'] = fn() => new ToolsController();
58-
flextype()->container()['ApiController'] = fn() => new ApiController();
59-
flextype()->container()['ApiEntriesController'] = fn() => new ApiEntriesController();
60-
flextype()->container()['ApiFilesController'] = fn() => new ApiFilesController();
61-
flextype()->container()['ApiFoldersController'] = fn() => new ApiFoldersController();
62-
flextype()->container()['ApiImagesController'] = fn() => new ApiImagesController();
63-
flextype()->container()['ApiAccessController'] = fn() => new ApiAccessController();
64-
flextype()->container()['ApiRegistryController'] = fn() => new ApiRegistryController();

routes/web.php

Lines changed: 79 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -4,93 +4,105 @@
44

55
use Flextype\Plugin\Acl\Middlewares\AclIsUserLoggedInMiddleware;
66
use Flextype\Plugin\Acl\Middlewares\AclIsUserLoggedInRolesInMiddleware;
7+
use Flextype\Plugin\Admin\Controllers\DashboardController;
8+
use Flextype\Plugin\Admin\Controllers\SettingsController;
9+
use Flextype\Plugin\Admin\Controllers\PluginsController;
10+
use Flextype\Plugin\Admin\Controllers\EntriesController;
11+
use Flextype\Plugin\Admin\Controllers\ToolsController;
12+
use Flextype\Plugin\Admin\Controllers\ApiController;
13+
use Flextype\Plugin\Admin\Controllers\ApiImagesController;
14+
use Flextype\Plugin\Admin\Controllers\ApiRegistryController;
15+
use Flextype\Plugin\Admin\Controllers\ApiEntriesController;
16+
use Flextype\Plugin\Admin\Controllers\ApiFilesController;
17+
use Flextype\Plugin\Admin\Controllers\ApiFoldersController;
18+
use Flextype\Plugin\Admin\Controllers\ApiAccessController;
719

820
flextype()->group('/' . $admin_route, function () : void {
921
// Dashboard
10-
flextype()->get('', 'DashboardController:index')->setName('admin.dashboard.index');
22+
flextype()->get('', DashboardController::class . ':index')->setName('admin.dashboard.index');
1123

1224
// EntriesController
13-
flextype()->get('/entries', 'EntriesController:index')->setName('admin.entries.index');
14-
flextype()->get('/entries/edit', 'EntriesController:edit')->setName('admin.entries.edit');
15-
flextype()->post('/entries/edit', 'EntriesController:editProcess')->setName('admin.entries.editProcess');
16-
flextype()->get('/entries/add', 'EntriesController:add')->setName('admin.entries.add');
17-
flextype()->post('/entries/add', 'EntriesController:addProcess')->setName('admin.entries.addProcess');
18-
flextype()->post('/entries/select-entry-type', 'EntriesController:selectEntryTypeProcess')->setName('admin.entries.selectEntryTypeProcess');
19-
flextype()->get('/entries/move', 'EntriesController:move')->setName('admin.entries.move');
20-
flextype()->post('/entries/move', 'EntriesController:moveProcess')->setName('admin.entries.moveProcess');
21-
flextype()->get('/entries/rename', 'EntriesController:rename')->setName('admin.entries.rename');
22-
flextype()->post('/entries/rename', 'EntriesController:renameProcess')->setName('admin.entries.renameProcess');
23-
flextype()->get('/entries/type', 'EntriesController:type')->setName('admin.entries.type');
24-
flextype()->post('/entries/type', 'EntriesController:typeProcess')->setName('admin.entries.typeProcess');
25-
flextype()->post('/entries/duplicate', 'EntriesController:duplicateProcess')->setName('admin.entries.duplicateProcess');
26-
flextype()->post('/entries/delete', 'EntriesController:deleteProcess')->setName('admin.entries.deleteProcess');
27-
flextype()->post('/entries/delete-media-file', 'EntriesController:deleteMediaFileProcess')->setName('admin.entries.deleteMediaFileProcess');
28-
flextype()->post('/entries/upload-media-file', 'EntriesController:uploadMediaFileProcess')->setName('admin.entries.uploadMediaFileProcess');
29-
flextype()->post('/entries/display-view-process', 'EntriesController:displayViewProcess')->setName('admin.entries.displayViewProcess');
25+
flextype()->get('/entries', EntriesController::class . ':index')->setName('admin.entries.index');
26+
flextype()->get('/entries/edit', EntriesController::class . ':edit')->setName('admin.entries.edit');
27+
flextype()->post('/entries/edit', EntriesController::class . ':editProcess')->setName('admin.entries.editProcess');
28+
flextype()->get('/entries/add', EntriesController::class . ':add')->setName('admin.entries.add');
29+
flextype()->post('/entries/add', EntriesController::class . ':addProcess')->setName('admin.entries.addProcess');
30+
flextype()->post('/entries/select-entry-type', EntriesController::class . ':selectEntryTypeProcess')->setName('admin.entries.selectEntryTypeProcess');
31+
flextype()->get('/entries/move', EntriesController::class . ':move')->setName('admin.entries.move');
32+
flextype()->post('/entries/move', EntriesController::class . ':moveProcess')->setName('admin.entries.moveProcess');
33+
flextype()->get('/entries/rename', EntriesController::class . ':rename')->setName('admin.entries.rename');
34+
flextype()->post('/entries/rename', EntriesController::class . ':renameProcess')->setName('admin.entries.renameProcess');
35+
flextype()->get('/entries/type', EntriesController::class . ':type')->setName('admin.entries.type');
36+
flextype()->post('/entries/type', EntriesController::class . ':typeProcess')->setName('admin.entries.typeProcess');
37+
flextype()->post('/entries/duplicate', EntriesController::class . ':duplicateProcess')->setName('admin.entries.duplicateProcess');
38+
flextype()->post('/entries/delete', EntriesController::class . ':deleteProcess')->setName('admin.entries.deleteProcess');
39+
flextype()->post('/entries/delete-media-file', EntriesController::class . ':deleteMediaFileProcess')->setName('admin.entries.deleteMediaFileProcess');
40+
flextype()->post('/entries/upload-media-file', EntriesController::class . ':uploadMediaFileProcess')->setName('admin.entries.uploadMediaFileProcess');
41+
flextype()->post('/entries/display-view-process', EntriesController::class . ':displayViewProcess')->setName('admin.entries.displayViewProcess');
3042

3143
// Settings Controller
32-
flextype()->get('/settings', 'SettingsController:index')->setName('admin.settings.index');
33-
flextype()->post('/settings', 'SettingsController:updateSettingsProcess')->setName('admin.settings.update');
44+
flextype()->get('/settings', SettingsController::class . ':index')->setName('admin.settings.index');
45+
flextype()->post('/settings', SettingsController::class . ':updateSettingsProcess')->setName('admin.settings.update');
3446

3547
// Plugins Controller
36-
flextype()->get('/plugins', 'PluginsController:index')->setName('admin.plugins.index');
37-
flextype()->get('/plugins/information', 'PluginsController:information')->setName('admin.plugins.information');
38-
flextype()->get('/plugins/settings', 'PluginsController:settings')->setName('admin.plugins.settings');
39-
flextype()->post('/plugins/settings', 'PluginsController:settingsProcess')->setName('admin.plugins.settingsProcess');
40-
flextype()->post('/plugins/update-status', 'PluginsController:pluginStatusProcess')->setName('admin.plugins.update-status');
48+
flextype()->get('/plugins', PluginsController::class . ':index')->setName('admin.plugins.index');
49+
flextype()->get('/plugins/information', PluginsController::class . ':information')->setName('admin.plugins.information');
50+
flextype()->get('/plugins/settings', PluginsController::class . ':settings')->setName('admin.plugins.settings');
51+
flextype()->post('/plugins/settings', PluginsController::class . ':settingsProcess')->setName('admin.plugins.settingsProcess');
52+
flextype()->post('/plugins/update-status', PluginsController::class . ':pluginStatusProcess')->setName('admin.plugins.update-status');
4153

4254
// ToolsController
43-
flextype()->get('/tools', 'ToolsController:index')->setName('admin.tools.index');
44-
flextype()->get('/tools/information', 'ToolsController:information')->setName('admin.tools.information');
45-
flextype()->get('/tools/registry', 'ToolsController:registry')->setName('admin.tools.registry');
46-
flextype()->get('/tools/cache', 'ToolsController:cache')->setName('admin.tools.cache');
47-
flextype()->post('/tools/cache', 'ToolsController:clearCacheProcess')->setName('admin.tools.clearCacheProcess');
48-
flextype()->post('/tools/cache-all', 'ToolsController:clearCacheAllProcess')->setName('admin.tools.clearCacheAllProcess');
55+
flextype()->get('/tools', ToolsController::class . ':index')->setName('admin.tools.index');
56+
flextype()->get('/tools/information', ToolsController::class . ':information')->setName('admin.tools.information');
57+
flextype()->get('/tools/registry', ToolsController::class . ':registry')->setName('admin.tools.registry');
58+
flextype()->get('/tools/cache', ToolsController::class . ':cache')->setName('admin.tools.cache');
59+
flextype()->post('/tools/cache', ToolsController::class . ':clearCacheProcess')->setName('admin.tools.clearCacheProcess');
60+
flextype()->post('/tools/cache-all', ToolsController::class . ':clearCacheAllProcess')->setName('admin.tools.clearCacheAllProcess');
4961

5062
// ApiController
5163
flextype()->get('/api', 'ApiController:index')->setName('admin.api.index');
5264

53-
flextype()->get('/api/entries', 'ApiEntriesController:index')->setName('admin.api_entries.index');
54-
flextype()->get('/api/entries/add', 'ApiEntriesController:add')->setName('admin.api_entries.add');
55-
flextype()->post('/api/entries/add', 'ApiEntriesController:addProcess')->setName('admin.api_entries.addProcess');
56-
flextype()->get('/api/entries/edit', 'ApiEntriesController:edit')->setName('admin.api_entries.edit');
57-
flextype()->post('/api/entries/edit', 'ApiEntriesController:editProcess')->setName('admin.api_entries.editProcess');
58-
flextype()->post('/api/entries/delete', 'ApiEntriesController:deleteProcess')->setName('admin.api_entries.deleteProcess');
65+
flextype()->get('/api/entries', ApiEntriesController::class . ':index')->setName('admin.api_entries.index');
66+
flextype()->get('/api/entries/add', ApiEntriesController::class . ':add')->setName('admin.api_entries.add');
67+
flextype()->post('/api/entries/add', ApiEntriesController::class . ':addProcess')->setName('admin.api_entries.addProcess');
68+
flextype()->get('/api/entries/edit', ApiEntriesController::class . ':edit')->setName('admin.api_entries.edit');
69+
flextype()->post('/api/entries/edit', ApiEntriesController::class . ':editProcess')->setName('admin.api_entries.editProcess');
70+
flextype()->post('/api/entries/delete', ApiEntriesController::class . ':deleteProcess')->setName('admin.api_entries.deleteProcess');
5971

60-
flextype()->get('/api/files', 'ApiFilesController:index')->setName('admin.api_files.index');
61-
flextype()->get('/api/files/add', 'ApiFilesController:add')->setName('admin.api_files.add');
62-
flextype()->post('/api/files/add', 'ApiFilesController:addProcess')->setName('admin.api_files.addProcess');
63-
flextype()->get('/api/files/edit', 'ApiFilesController:edit')->setName('admin.api_files.edit');
64-
flextype()->post('/api/files/edit', 'ApiFilesController:editProcess')->setName('admin.api_files.editProcess');
65-
flextype()->post('/api/files/delete', 'ApiFilesController:deleteProcess')->setName('admin.api_files.deleteProcess');
72+
flextype()->get('/api/files', ApiFilesController::class . ':index')->setName('admin.api_files.index');
73+
flextype()->get('/api/files/add', ApiFilesController::class . ':add')->setName('admin.api_files.add');
74+
flextype()->post('/api/files/add', ApiFilesController::class . ':addProcess')->setName('admin.api_files.addProcess');
75+
flextype()->get('/api/files/edit', ApiFilesController::class . ':edit')->setName('admin.api_files.edit');
76+
flextype()->post('/api/files/edit', ApiFilesController::class . ':editProcess')->setName('admin.api_files.editProcess');
77+
flextype()->post('/api/files/delete', ApiFilesController::class . ':deleteProcess')->setName('admin.api_files.deleteProcess');
6678

67-
flextype()->get('/api/folders', 'ApiFoldersController:index')->setName('admin.api_folders.index');
68-
flextype()->get('/api/folders/add', 'ApiFoldersController:add')->setName('admin.api_folders.add');
69-
flextype()->post('/api/folders/add', 'ApiFoldersController:addProcess')->setName('admin.api_folders.addProcess');
70-
flextype()->get('/api/folders/edit', 'ApiFoldersController:edit')->setName('admin.api_folders.edit');
71-
flextype()->post('/api/folders/edit', 'ApiFoldersController:editProcess')->setName('admin.api_folders.editProcess');
72-
flextype()->post('/api/folders/delete', 'ApiFoldersController:deleteProcess')->setName('admin.api_folders.deleteProcess');
79+
flextype()->get('/api/folders', ApiFoldersController::class . ':index')->setName('admin.api_folders.index');
80+
flextype()->get('/api/folders/add', ApiFoldersController::class . ':add')->setName('admin.api_folders.add');
81+
flextype()->post('/api/folders/add', ApiFoldersController::class . ':addProcess')->setName('admin.api_folders.addProcess');
82+
flextype()->get('/api/folders/edit', ApiFoldersController::class . ':edit')->setName('admin.api_folders.edit');
83+
flextype()->post('/api/folders/edit', ApiFoldersController::class . ':editProcess')->setName('admin.api_folders.editProcess');
84+
flextype()->post('/api/folders/delete', ApiFoldersController::class . ':deleteProcess')->setName('admin.api_folders.deleteProcess');
7385

74-
flextype()->get('/api/registry', 'ApiRegistryController:index')->setName('admin.api_registry.index');
75-
flextype()->get('/api/registry/add', 'ApiRegistryController:add')->setName('admin.api_registry.add');
76-
flextype()->post('/api/registry/add', 'ApiRegistryController:addProcess')->setName('admin.api_registry.addProcess');
77-
flextype()->get('/api/registry/edit', 'ApiRegistryController:edit')->setName('admin.api_registry.edit');
78-
flextype()->post('/api/registry/edit', 'ApiRegistryController:editProcess')->setName('admin.api_registry.editProcess');
79-
flextype()->post('/api/registry/delete', 'ApiRegistryController:deleteProcess')->setName('admin.api_registry.deleteProcess');
86+
flextype()->get('/api/registry', ApiRegistryController::class . ':index')->setName('admin.api_registry.index');
87+
flextype()->get('/api/registry/add', ApiRegistryController::class . ':add')->setName('admin.api_registry.add');
88+
flextype()->post('/api/registry/add', ApiRegistryController::class . ':addProcess')->setName('admin.api_registry.addProcess');
89+
flextype()->get('/api/registry/edit', ApiRegistryController::class . ':edit')->setName('admin.api_registry.edit');
90+
flextype()->post('/api/registry/edit', ApiRegistryController::class . ':editProcess')->setName('admin.api_registry.editProcess');
91+
flextype()->post('/api/registry/delete', ApiRegistryController::class . ':deleteProcess')->setName('admin.api_registry.deleteProcess');
8092

81-
flextype()->get('/api/images', 'ApiImagesController:index')->setName('admin.api_images.index');
82-
flextype()->get('/api/images/add', 'ApiImagesController:add')->setName('admin.api_images.add');
83-
flextype()->post('/api/images/add', 'ApiImagesController:addProcess')->setName('admin.api_images.addProcess');
84-
flextype()->get('/api/images/edit', 'ApiImagesController:edit')->setName('admin.api_images.edit');
85-
flextype()->post('/api/images/edit', 'ApiImagesController:editProcess')->setName('admin.api_images.editProcess');
86-
flextype()->post('/api/images/delete', 'ApiImagesController:deleteProcess')->setName('admin.api_images.deleteProcess');
93+
flextype()->get('/api/images', ApiImagesController::class . ':index')->setName('admin.api_images.index');
94+
flextype()->get('/api/images/add', ApiImagesController::class . ':add')->setName('admin.api_images.add');
95+
flextype()->post('/api/images/add', ApiImagesController::class . ':addProcess')->setName('admin.api_images.addProcess');
96+
flextype()->get('/api/images/edit', ApiImagesController::class . ':edit')->setName('admin.api_images.edit');
97+
flextype()->post('/api/images/edit', ApiImagesController::class . ':editProcess')->setName('admin.api_images.editProcess');
98+
flextype()->post('/api/images/delete', ApiImagesController::class . ':deleteProcess')->setName('admin.api_images.deleteProcess');
8799

88-
flextype()->get('/api/access', 'ApiAccessController:index')->setName('admin.api_access.index');
89-
flextype()->get('/api/access/add', 'ApiAccessController:add')->setName('admin.api_access.add');
90-
flextype()->post('/api/access/add', 'ApiAccessController:addProcess')->setName('admin.api_access.addProcess');
91-
flextype()->get('/api/access/edit', 'ApiAccessController:edit')->setName('admin.api_access.edit');
92-
flextype()->post('/api/access/edit', 'ApiAccessController:editProcess')->setName('admin.api_access.editProcess');
93-
flextype()->post('/api/access/delete', 'ApiAccessController:deleteProcess')->setName('admin.api_access.deleteProcess');
100+
flextype()->get('/api/access', ApiAccessController::class . ':index')->setName('admin.api_access.index');
101+
flextype()->get('/api/access/add', ApiAccessController::class . ':add')->setName('admin.api_access.add');
102+
flextype()->post('/api/access/add', ApiAccessController::class . ':addProcess')->setName('admin.api_access.addProcess');
103+
flextype()->get('/api/access/edit', ApiAccessController::class . ':edit')->setName('admin.api_access.edit');
104+
flextype()->post('/api/access/edit', ApiAccessController::class . ':editProcess')->setName('admin.api_access.editProcess');
105+
flextype()->post('/api/access/delete', ApiAccessController::class . ':deleteProcess')->setName('admin.api_access.deleteProcess');
94106

95107
})->add(new AclIsUserLoggedInMiddleware(['redirect' => 'admin.accounts.login']))
96108
->add(new AclIsUserLoggedInRolesInMiddleware(['redirect' => (flextype('acl')->isUserLoggedIn() ? 'admin.accounts.no-access' : 'admin.accounts.login'),

0 commit comments

Comments
 (0)