[FEATURE] Configurable Route Parameters
[Packages/TYPO3.CMS.git] / typo3 / sysext / backend / Configuration / Backend / AjaxRoutes.php
1 <?php
2 use TYPO3\CMS\Backend\Controller;
3
4 /**
5 * Definitions for routes provided by EXT:backend
6 * Contains all AJAX-based routes for entry points
7 *
8 * Currently the "access" property is only used so no token creation + validation is made
9 * but will be extended further.
10 */
11 return [
12
13 // Expand or toggle in legacy file tree
14 'sc_alt_file_navframe_expandtoggle' => [
15 'path' => '/folder/tree/expand',
16 'target' => Controller\FileSystemNavigationFrameController::class . '::ajaxExpandCollapse'
17 ],
18
19 // File processing
20 'file_process' => [
21 'path' => '/file/process',
22 'target' => Controller\File\FileController::class . '::processAjaxRequest'
23 ],
24
25 // Check if file exists
26 'file_exists' => [
27 'path' => '/file/exists',
28 'target' => Controller\File\FileController::class . '::fileExistsInFolderAction'
29 ],
30
31 // Get record details of a child record in IRRE
32 'record_inline_details' => [
33 'path' => '/record/inline/details',
34 'target' => Controller\FormInlineAjaxController::class . '::detailsAction'
35 ],
36
37 // Create new inline element
38 'record_inline_create' => [
39 'path' => '/record/inline/create',
40 'target' => Controller\FormInlineAjaxController::class . '::createAction'
41 ],
42
43 // Synchronize localization
44 'record_inline_synchronizelocalize' => [
45 'path' => '/record/inline/synchronizelocalize',
46 'target' => Controller\FormInlineAjaxController::class . '::synchronizeLocalizeAction'
47 ],
48
49 // Expand / Collapse inline record
50 'record_inline_expandcollapse' => [
51 'path' => '/record/inline/expandcollapse',
52 'target' => Controller\FormInlineAjaxController::class . '::expandOrCollapseAction'
53 ],
54
55 // Add a flex form section container
56 'record_flex_container_add' => [
57 'path' => '/record/flex/containeradd',
58 'target' => Controller\FormFlexAjaxController::class . '::containerAdd',
59 ],
60
61 // FormEngine suggest wizard result generator
62 'record_suggest' => [
63 'path' => '/wizard/suggest/search',
64 'target' => \TYPO3\CMS\Backend\Controller\Wizard\SuggestWizardController::class . '::searchAction'
65 ],
66
67 // Fetch the tree-structured data from a record for the tree selection
68 'record_tree_data' => [
69 'path' => '/record/tree/fetchData',
70 'target' => Controller\FormSelectTreeAjaxController::class . '::fetchDataAction'
71 ],
72
73 // Get shortcut edit form
74 'shortcut_editform' => [
75 'path' => '/shortcut/editform',
76 'target' => \TYPO3\CMS\Backend\Backend\ToolbarItems\ShortcutToolbarItem::class . '::editFormAction'
77 ],
78
79 // Save edited shortcut
80 'shortcut_saveform' => [
81 'path' => '/shortcut/saveform',
82 'target' => \TYPO3\CMS\Backend\Backend\ToolbarItems\ShortcutToolbarItem::class . '::saveFormAction'
83 ],
84
85 // Render shortcut toolbar item
86 'shortcut_list' => [
87 'path' => '/shortcut/list',
88 'target' => \TYPO3\CMS\Backend\Backend\ToolbarItems\ShortcutToolbarItem::class . '::menuAction'
89 ],
90
91 // Delete a shortcut
92 'shortcut_remove' => [
93 'path' => '/shortcut/remove',
94 'target' => \TYPO3\CMS\Backend\Backend\ToolbarItems\ShortcutToolbarItem::class . '::removeShortcutAction'
95 ],
96
97 // Create a new shortcut
98 'shortcut_create' => [
99 'path' => '/shortcut/create',
100 'target' => \TYPO3\CMS\Backend\Backend\ToolbarItems\ShortcutToolbarItem::class . '::createShortcutAction'
101 ],
102
103 // Render systeminformtion toolbar item
104 'systeminformation_render' => [
105 'path' => '/system-information/render',
106 'target' => \TYPO3\CMS\Backend\Backend\ToolbarItems\SystemInformationToolbarItem::class . '::renderMenuAction',
107 'parameters' => [
108 'skipSessionUpdate' => 1
109 ]
110 ],
111
112 // Reload the module menu
113 'modulemenu' => [
114 'path' => '/module-menu',
115 'target' => Controller\BackendController::class . '::getModuleMenu'
116 ],
117 'topbar' => [
118 'path' => '/topbar',
119 'target' => Controller\BackendController::class . '::getTopbar'
120 ],
121
122 // Log in into backend
123 'login' => [
124 'path' => '/login',
125 'target' => \TYPO3\CMS\Backend\AjaxLoginHandler::class . '::loginAction',
126 'access' => 'public'
127 ],
128
129 // Log out from backend
130 'logout' => [
131 'path' => '/logout',
132 'target' => \TYPO3\CMS\Backend\AjaxLoginHandler::class . '::logoutAction',
133 'access' => 'public'
134 ],
135
136 // Refresh login of backend
137 'login_refresh' => [
138 'path' => '/login/refresh',
139 'target' => \TYPO3\CMS\Backend\AjaxLoginHandler::class . '::refreshAction',
140 ],
141
142 // Check if backend session has timed out
143 'login_timedout' => [
144 'path' => '/login/timedout',
145 'target' => \TYPO3\CMS\Backend\AjaxLoginHandler::class . '::isTimedOutAction',
146 'access' => 'public',
147 'parameters' => [
148 'skipSessionUpdate' => 1
149 ]
150 ],
151
152 // ExtDirect routing
153 'ext_direct_route' => [
154 'path' => '/ext-direct/route',
155 'target' => \TYPO3\CMS\Core\ExtDirect\ExtDirectRouter::class . '::routeAction',
156 'access' => 'public'
157 ],
158
159 // ExtDirect API
160 'ext_direct_api' => [
161 'path' => '/ext-direct/api',
162 'target' => \TYPO3\CMS\Core\ExtDirect\ExtDirectApi::class . '::getAPI'
163 ],
164
165 // Render flash messages
166 'flashmessages_render' => [
167 'path' => '/flashmessages/render',
168 'target' => \TYPO3\CMS\Backend\Template\DocumentTemplate::class . '::renderQueuedFlashMessages'
169 ],
170
171 // Load context menu for
172 'contextmenu' => [
173 'path' => '/context-menu',
174 'target' => Controller\ContextMenuController::class . '::getContextMenuAction'
175 ],
176
177 // Load context menu for
178 'contextmenu_clipboard' => [
179 'path' => '/context-menu/clipboard',
180 'target' => Controller\ContextMenuController::class . '::clipboardAction'
181 ],
182
183 // Process data handler commands
184 'record_process' => [
185 'path' => '/record/process',
186 'target' => Controller\SimpleDataHandlerController::class . '::processAjaxRequest'
187 ],
188
189 // Process user settings
190 'usersettings_process' => [
191 'path' => '/usersettings/process',
192 'target' => Controller\UserSettingsController::class . '::processAjaxRequest'
193 ],
194
195 // Open the image manipulation wizard
196 'wizard_image_manipulation' => [
197 'path' => '/wizard/image-manipulation',
198 'target' => \TYPO3\CMS\Backend\Form\Wizard\ImageManipulationWizard::class . '::getWizardAction'
199 ],
200
201 // Save a newly added online media
202 'livesearch' => [
203 'path' => '/livesearch',
204 'target' => Controller\LiveSearchController::class . '::liveSearchAction'
205 ],
206
207 // Save a newly added online media
208 'online_media_create' => [
209 'path' => '/online-media/create',
210 'target' => Controller\OnlineMediaController::class . '::createAction'
211 ],
212
213 // Get icon from IconFactory
214 'icons' => [
215 'path' => '/icons',
216 'target' => \TYPO3\CMS\Core\Imaging\IconFactory::class . '::processAjaxRequest'
217 ],
218
219 // Encode typolink parts on demand
220 'link_browser_encodetypolink' => [
221 'path' => '/link-browser/encode-typolink',
222 'target' => \TYPO3\CMS\Backend\Controller\LinkBrowserController::class . '::encodeTypoLink',
223 ],
224
225 // Get languages in page and colPos
226 'languages_page_colpos' => [
227 'path' => '/records/localize/get-languages',
228 'target' => Controller\Page\LocalizationController::class . '::getUsedLanguagesInPageAndColumn'
229 ],
230
231 // Get summary of records to localize
232 'records_localize_summary' => [
233 'path' => '/records/localize/summary',
234 'target' => Controller\Page\LocalizationController::class . '::getRecordLocalizeSummary'
235 ],
236
237 // Localize the records
238 'records_localize' => [
239 'path' => '/records/localize',
240 'target' => Controller\Page\LocalizationController::class . '::localizeRecords'
241 ],
242
243 // context help
244 'context_help' => [
245 'path' => '/context-help',
246 'target' => \TYPO3\CMS\Backend\Controller\ContextHelpAjaxController::class . '::getHelpAction'
247 ]
248 ];