b9705f08aa9b0b817d3cf513eacd0147dd0f5b98
[Packages/TYPO3.CMS.git] / typo3 / sysext / core / Configuration / DefaultConfiguration.php
1 <?php
2 /*
3 * This file is part of the TYPO3 CMS project.
4 *
5 * It is free software; you can redistribute it and/or modify it under
6 * the terms of the GNU General Public License, either version 2
7 * of the License, or any later version.
8 *
9 * For the full copyright and license information, please read the
10 * LICENSE.txt file that was distributed with this source code.
11 *
12 * The TYPO3 project - inspiring people to share!
13 */
14
15 /**
16 * This file contains the default array definition that is
17 * later populated as $GLOBALS['TYPO3_CONF_VARS']
18 *
19 * The description of the various options is stored in the DefaultConfigurationDescription.yaml file
20 */
21 return [
22 'GFX' => [ // Configuration of the image processing features in TYPO3. 'IM' and 'GD' are short for ImageMagick and GD library respectively.
23 'thumbnails' => true,
24 'thumbnails_png' => true,
25 'gif_compress' => true,
26 'imagefile_ext' => 'gif,jpg,jpeg,tif,tiff,bmp,pcx,tga,png,pdf,ai,svg',
27 'gdlib' => true,
28 'gdlib_png' => false,
29 'processor_enabled' => true,
30 'processor_path' => '/usr/bin/',
31 'processor_path_lzw' => '/usr/bin/',
32 'processor' => 'ImageMagick',
33 'processor_effects' => false,
34 'processor_allowUpscaling' => true,
35 'processor_allowFrameSelection' => true,
36 'processor_allowTemporaryMasksAsPng' => false,
37 'processor_stripColorProfileByDefault' => true,
38 'processor_stripColorProfileCommand' => '+profile \'*\'',
39 'processor_colorspace' => 'RGB',
40 'jpg_quality' => 85,
41 ],
42 'SYS' => [
43 // System related concerning both frontend and backend.
44 'lang' => [
45 'format' => [
46 'priority' => 'xlf,xml'
47 ],
48 'parser' => [
49 'xml' => \TYPO3\CMS\Core\Localization\Parser\LocallangXmlParser::class,
50 'xlf' => \TYPO3\CMS\Core\Localization\Parser\XliffParser::class
51 ]
52 ],
53 'session' => [
54 'BE' => [
55 'backend' => \TYPO3\CMS\Core\Session\Backend\DatabaseSessionBackend::class,
56 'options' => [
57 'table' => 'be_sessions'
58 ]
59 ],
60 'FE' => [
61 'backend' => \TYPO3\CMS\Core\Session\Backend\DatabaseSessionBackend::class,
62 'options' => [
63 'table' => 'fe_sessions',
64 'has_anonymous' => true,
65 ]
66 ]
67 ],
68 'fileCreateMask' => '0664',
69 'folderCreateMask' => '2775',
70 'createGroup' => '',
71 'sitename' => 'TYPO3',
72 'encryptionKey' => '',
73 'cookieDomain' => '',
74 'cookieSecure' => 0,
75 'doNotCheckReferer' => false,
76 'recursiveDomainSearch' => false,
77 'trustedHostsPattern' => 'SERVER_NAME',
78 'devIPmask' => '127.0.0.1,::1',
79 'ddmmyy' => 'd-m-y',
80 'hhmm' => 'H:i',
81 'USdateFormat' => false,
82 'loginCopyrightWarrantyProvider' => '',
83 'loginCopyrightWarrantyURL' => '',
84 'textfile_ext' => 'txt,ts,typoscript,html,htm,css,tmpl,js,sql,xml,csv,xlf,yaml,yml',
85 'mediafile_ext' => 'gif,jpg,jpeg,bmp,png,pdf,svg,ai,mp3,wav,mp4,ogg,flac,opus,webm,youtube,vimeo',
86 'binPath' => '',
87 'binSetup' => '',
88 'setMemoryLimit' => 0,
89 'phpTimeZone' => '',
90 'systemLog' => false,
91 'systemLogLevel' => 0,
92 'UTF8filesystem' => false,
93 'systemLocale' => '',
94 'systemMaintainers' => null, // @todo: This will be set up as an empty array once the installer can define a system maintainers
95 'reverseProxyIP' => '',
96 'reverseProxyHeaderMultiValue' => 'none',
97 'reverseProxyPrefix' => '',
98 'reverseProxySSL' => '',
99 'reverseProxyPrefixSSL' => '',
100 'caching' => [
101 'cacheConfigurations' => [
102 // The cache_core cache is is for core php code only and must
103 // not be abused by third party extensions.
104 'cache_core' => [
105 'frontend' => \TYPO3\CMS\Core\Cache\Frontend\PhpFrontend::class,
106 'backend' => \TYPO3\CMS\Core\Cache\Backend\SimpleFileBackend::class,
107 'options' => [
108 'defaultLifetime' => 0,
109 ],
110 'groups' => ['system']
111 ],
112 'cache_hash' => [
113 'frontend' => \TYPO3\CMS\Core\Cache\Frontend\VariableFrontend::class,
114 'backend' => \TYPO3\CMS\Core\Cache\Backend\Typo3DatabaseBackend::class,
115 'options' => [],
116 'groups' => ['pages']
117 ],
118 'cache_pages' => [
119 'frontend' => \TYPO3\CMS\Core\Cache\Frontend\VariableFrontend::class,
120 'backend' => \TYPO3\CMS\Core\Cache\Backend\Typo3DatabaseBackend::class,
121 'options' => [
122 'compression' => true
123 ],
124 'groups' => ['pages']
125 ],
126 'cache_pagesection' => [
127 'frontend' => \TYPO3\CMS\Core\Cache\Frontend\VariableFrontend::class,
128 'backend' => \TYPO3\CMS\Core\Cache\Backend\Typo3DatabaseBackend::class,
129 'options' => [
130 'compression' => true,
131 'defaultLifetime' => 2592000, // 30 days; set this to a lower value in case your cache gets too big
132 ],
133 'groups' => ['pages']
134 ],
135 'cache_phpcode' => [
136 'frontend' => \TYPO3\CMS\Core\Cache\Frontend\PhpFrontend::class,
137 'backend' => \TYPO3\CMS\Core\Cache\Backend\FileBackend::class,
138 'options' => [
139 'defaultLifetime' => 0,
140 ],
141 'groups' => ['system']
142 ],
143 'cache_runtime' => [
144 'frontend' => \TYPO3\CMS\Core\Cache\Frontend\VariableFrontend::class,
145 'backend' => \TYPO3\CMS\Core\Cache\Backend\TransientMemoryBackend::class,
146 'options' => [],
147 'groups' => []
148 ],
149 'cache_rootline' => [
150 'frontend' => \TYPO3\CMS\Core\Cache\Frontend\VariableFrontend::class,
151 'backend' => \TYPO3\CMS\Core\Cache\Backend\Typo3DatabaseBackend::class,
152 'options' => [
153 'defaultLifetime' => 2592000, // 30 days; set this to a lower value in case your cache gets too big
154 ],
155 'groups' => ['pages']
156 ],
157 'cache_imagesizes' => [
158 'frontend' => \TYPO3\CMS\Core\Cache\Frontend\VariableFrontend::class,
159 'backend' => \TYPO3\CMS\Core\Cache\Backend\Typo3DatabaseBackend::class,
160 'options' => [
161 'defaultLifetime' => 0,
162 ],
163 'groups' => ['lowlevel'],
164 ],
165 'assets' => [
166 'frontend' => \TYPO3\CMS\Core\Cache\Frontend\VariableFrontend::class,
167 'backend' => \TYPO3\CMS\Core\Cache\Backend\SimpleFileBackend::class,
168 'options' => [
169 'defaultLifetime' => 0,
170 ],
171 'groups' => ['system']
172 ],
173 'l10n' => [
174 'frontend' => \TYPO3\CMS\Core\Cache\Frontend\VariableFrontend::class,
175 'backend' => \TYPO3\CMS\Core\Cache\Backend\SimpleFileBackend::class,
176 'options' => [
177 'defaultLifetime' => 0,
178 ],
179 'groups' => ['system']
180 ],
181 'fluid_template' => [
182 'backend' => \TYPO3\CMS\Core\Cache\Backend\SimpleFileBackend::class,
183 'frontend' => \TYPO3\CMS\Fluid\Core\Cache\FluidTemplateCache::class,
184 'groups' => ['system'],
185 ],
186 'extbase_reflection' => [
187 'frontend' => \TYPO3\CMS\Core\Cache\Frontend\VariableFrontend::class,
188 'backend' => \TYPO3\CMS\Core\Cache\Backend\SimpleFileBackend::class,
189 'options' => [
190 'defaultLifetime' => 0,
191 ],
192 'groups' => ['system']
193 ],
194 'extbase_datamapfactory_datamap' => [
195 'frontend' => \TYPO3\CMS\Core\Cache\Frontend\VariableFrontend::class,
196 'backend' => \TYPO3\CMS\Core\Cache\Backend\Typo3DatabaseBackend::class,
197 'groups' => ['system'],
198 ],
199 ],
200 ],
201 'defaultCategorizedTables' => '',
202 'displayErrors' => -1,
203 'productionExceptionHandler' => \TYPO3\CMS\Core\Error\ProductionExceptionHandler::class,
204 'debugExceptionHandler' => \TYPO3\CMS\Core\Error\DebugExceptionHandler::class,
205 'errorHandler' => \TYPO3\CMS\Core\Error\ErrorHandler::class,
206 'errorHandlerErrors' => E_ALL & ~(E_STRICT | E_NOTICE | E_COMPILE_WARNING | E_COMPILE_ERROR | E_CORE_WARNING | E_CORE_ERROR | E_PARSE | E_ERROR),
207 'exceptionalErrors' => E_ALL & ~(E_STRICT | E_NOTICE | E_COMPILE_WARNING | E_COMPILE_ERROR | E_CORE_WARNING | E_CORE_ERROR | E_PARSE | E_ERROR | E_DEPRECATED | E_USER_DEPRECATED | E_WARNING | E_USER_ERROR | E_USER_NOTICE | E_USER_WARNING),
208 'belogErrorReporting' => E_ALL & ~(E_STRICT | E_NOTICE),
209 'locallangXMLOverride' => [], // For extension/overriding of the arrays in 'locallang' files in frontend and backend. See 'Inside TYPO3' for more information.
210 'generateApacheHtaccess' => 1,
211 'Objects' => [],
212 'fal' => [
213 'registeredDrivers' => [
214 'Local' => [
215 'class' => \TYPO3\CMS\Core\Resource\Driver\LocalDriver::class,
216 'shortName' => 'Local',
217 'flexFormDS' => 'FILE:EXT:core/Configuration/Resource/Driver/LocalDriverFlexForm.xml',
218 'label' => 'Local filesystem'
219 ]
220 ],
221 'defaultFilterCallbacks' => [
222 [
223 \TYPO3\CMS\Core\Resource\Filter\FileNameFilter::class,
224 'filterHiddenFilesAndFolders'
225 ]
226 ],
227 'processingTaskTypes' => [
228 'Image.Preview' => \TYPO3\CMS\Core\Resource\Processing\ImagePreviewTask::class,
229 'Image.CropScaleMask' => \TYPO3\CMS\Core\Resource\Processing\ImageCropScaleMaskTask::class
230 ],
231 'registeredCollections' => [
232 'static' => \TYPO3\CMS\Core\Resource\Collection\StaticFileCollection::class,
233 'folder' => \TYPO3\CMS\Core\Resource\Collection\FolderBasedFileCollection::class,
234 'category' => \TYPO3\CMS\Core\Resource\Collection\CategoryBasedFileCollection::class,
235 ],
236 'onlineMediaHelpers' => [
237 'youtube' => \TYPO3\CMS\Core\Resource\OnlineMedia\Helpers\YouTubeHelper::class,
238 'vimeo' => \TYPO3\CMS\Core\Resource\OnlineMedia\Helpers\VimeoHelper::class,
239 ],
240 ],
241 'IconFactory' => [
242 'recordStatusMapping' => [
243 'hidden' => 'overlay-hidden',
244 'fe_group' => 'overlay-restricted',
245 'starttime' => 'overlay-scheduled',
246 'endtime' => 'overlay-endtime',
247 'futureendtime' => 'overlay-scheduled',
248 'readonly' => 'overlay-readonly',
249 'deleted' => 'overlay-deleted',
250 'missing' => 'overlay-missing',
251 'translated' => 'overlay-translated',
252 'protectedSection' => 'overlay-includes-subpages'
253 ],
254 'overlayPriorities' => [
255 'hidden',
256 'starttime',
257 'endtime',
258 'futureendtime',
259 'protectedSection',
260 'fe_group'
261 ]
262 ],
263 'FileInfo' => [
264 // Static mapping for file extensions to mime types.
265 // In special cases the mime type is not detected correctly.
266 // Use this array only if the automatic detection does not work correct!
267 'fileExtensionToMimeType' => [
268 'svg' => 'image/svg+xml',
269 'youtube' => 'video/youtube',
270 'vimeo' => 'video/vimeo',
271 ]
272 ],
273 'fluid' => [
274 'interceptors' => [],
275 'namespaces' => [
276 'core' => [
277 'TYPO3\\CMS\\Core\\ViewHelpers'
278 ],
279 'f' => [
280 'TYPO3Fluid\\Fluid\\ViewHelpers',
281 'TYPO3\\CMS\\Fluid\\ViewHelpers'
282 ]
283 ]
284 ],
285 'linkHandler' => [ // Array: Available link types, class which implement the LinkHandling interface
286 'page' => \TYPO3\CMS\Core\LinkHandling\PageLinkHandler::class,
287 'file' => \TYPO3\CMS\Core\LinkHandling\FileLinkHandler::class,
288 'folder' => \TYPO3\CMS\Core\LinkHandling\FolderLinkHandler::class,
289 'url' => \TYPO3\CMS\Core\LinkHandling\UrlLinkHandler::class,
290 'email' => \TYPO3\CMS\Core\LinkHandling\EmailLinkHandler::class,
291 'record' => \TYPO3\CMS\Core\LinkHandling\RecordLinkHandler::class,
292 ],
293 'livesearch' => [], // Array: keywords used for commands to search for specific tables
294 'formEngine' => [
295 'nodeRegistry' => [], // Array: Registry to add or overwrite FormEngine nodes. Main key is a timestamp of the date when an entry is added, sub keys type, priority and class are required. Class must implement TYPO3\CMS\Backend\Form\NodeInterface.
296 'nodeResolver' => [], // Array: Additional node resolver. Main key is a timestamp of the date when an entry is added, sub keys type, priority and class are required. Class must implement TYPO3\CMS\Backend\Form\NodeResolverInterface.
297 'formDataGroup' => [ // Array: Registry of form data providers for form data groups
298 'tcaDatabaseRecord' => [
299 \TYPO3\CMS\Backend\Form\FormDataProvider\ReturnUrl::class => [],
300 \TYPO3\CMS\Backend\Form\FormDataProvider\InitializeProcessedTca::class => [
301 'depends' => [
302 \TYPO3\CMS\Backend\Form\FormDataProvider\ReturnUrl::class,
303 ],
304 ],
305 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseEditRow::class => [
306 'depends' => [
307 \TYPO3\CMS\Backend\Form\FormDataProvider\InitializeProcessedTca::class,
308 ]
309 ],
310 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseParentPageRow::class => [
311 'depends' => [
312 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseEditRow::class,
313 ],
314 ],
315 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseUserPermissionCheck::class => [
316 'depends' => [
317 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseParentPageRow::class,
318 \TYPO3\CMS\Backend\Form\FormDataProvider\InitializeProcessedTca::class,
319 ],
320 ],
321 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseEffectivePid::class => [
322 'depends' => [
323 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseParentPageRow::class,
324 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseUserPermissionCheck::class
325 ],
326 ],
327 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabasePageRootline::class => [
328 'depends' => [
329 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseEffectivePid::class,
330 ],
331 ],
332 \TYPO3\CMS\Backend\Form\FormDataProvider\UserTsConfig::class => [
333 'depends' => [
334 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabasePageRootline::class,
335 ],
336 ],
337 \TYPO3\CMS\Backend\Form\FormDataProvider\PageTsConfig::class => [
338 'depends' => [
339 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseEffectivePid::class,
340 \TYPO3\CMS\Backend\Form\FormDataProvider\UserTsConfig::class
341 ],
342 ],
343 \TYPO3\CMS\Backend\Form\FormDataProvider\InlineOverrideChildTca::class => [
344 'depends' => [
345 \TYPO3\CMS\Backend\Form\FormDataProvider\PageTsConfig::class,
346 ],
347 ],
348 \TYPO3\CMS\Backend\Form\FormDataProvider\ParentPageTca::class => [
349 'depends' => [
350 \TYPO3\CMS\Backend\Form\FormDataProvider\InlineOverrideChildTca::class
351 ],
352 ],
353 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRowInitializeNew::class => [
354 'depends' => [
355 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseUserPermissionCheck::class,
356 \TYPO3\CMS\Backend\Form\FormDataProvider\UserTsConfig::class,
357 \TYPO3\CMS\Backend\Form\FormDataProvider\PageTsConfig::class,
358 \TYPO3\CMS\Backend\Form\FormDataProvider\InitializeProcessedTca::class,
359 \TYPO3\CMS\Backend\Form\FormDataProvider\ParentPageTca::class,
360 ],
361 ],
362 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseUniqueUidNewRow::class => [
363 'depends' => [
364 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRowInitializeNew::class,
365 ],
366 ],
367 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRowDateTimeFields::class => [
368 'depends' => [
369 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseUniqueUidNewRow::class,
370 ],
371 ],
372 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRowDefaultValues::class => [
373 'depends' => [
374 \TYPO3\CMS\Backend\Form\FormDataProvider\InitializeProcessedTca::class,
375 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRowInitializeNew::class,
376 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRowDateTimeFields::class
377 ],
378 ],
379 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRecordOverrideValues::class => [
380 'depends' => [
381 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRowDefaultValues::class,
382 ],
383 ],
384 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaGroup::class => [
385 'depends' => [
386 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRecordOverrideValues::class,
387 ],
388 ],
389 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseSystemLanguageRows::class => [
390 'depends' => [
391 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaGroup::class,
392 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRecordOverrideValues::class,
393 ],
394 ],
395 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabasePageLanguageOverlayRows::class => [
396 'depends' => [
397 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseSystemLanguageRows::class
398 ],
399 ],
400 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseLanguageRows::class => [
401 'depends' => [
402 // Language stuff depends on user ts, but it *may* also depend on new row defaults
403 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRowInitializeNew::class,
404 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabasePageLanguageOverlayRows::class,
405 ],
406 ],
407 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRecordTypeValue::class => [
408 'depends' => [
409 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseLanguageRows::class,
410 // As the ctrl.type can hold a nested key we need to resolve all relations
411 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaGroup::class,
412 ],
413 ],
414 \TYPO3\CMS\Backend\Form\FormDataProvider\PageTsConfigMerged::class => [
415 'depends' => [
416 \TYPO3\CMS\Backend\Form\FormDataProvider\PageTsConfig::class,
417 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRecordTypeValue::class,
418 ],
419 ],
420 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaColumnsOverrides::class => [
421 'depends' => [
422 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRecordTypeValue::class,
423 ],
424 ],
425 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaInlineExpandCollapseState::class => [
426 'depends' => [
427 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseEditRow::class,
428 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaColumnsOverrides::class,
429 ],
430 ],
431 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaColumnsProcessCommon::class => [
432 'depends' => [
433 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaInlineExpandCollapseState::class
434 ],
435 ],
436 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaColumnsProcessRecordTitle::class => [
437 'depends' => [
438 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaColumnsProcessCommon::class
439 ],
440 ],
441 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaColumnsProcessPlaceholders::class => [
442 'depends' => [
443 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaColumnsProcessRecordTitle::class
444 ],
445 ],
446 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaColumnsProcessShowitem::class => [
447 'depends' => [
448 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaInlineExpandCollapseState::class,
449 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaColumnsProcessPlaceholders::class
450 ],
451 ],
452 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaColumnsRemoveUnused::class => [
453 'depends' => [
454 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaColumnsProcessCommon::class,
455 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaColumnsProcessRecordTitle::class,
456 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaColumnsProcessPlaceholders::class,
457 \TYPO3\CMS\Backend\Form\FormDataProvider\InlineOverrideChildTca::class,
458 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaColumnsProcessShowitem::class,
459 ],
460 ],
461 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaTypesShowitem::class => [
462 'depends' => [
463 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRecordTypeValue::class,
464 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseSystemLanguageRows::class,
465 \TYPO3\CMS\Backend\Form\FormDataProvider\InitializeProcessedTca::class,
466 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaColumnsRemoveUnused::class,
467 ],
468 ],
469 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaColumnsProcessFieldLabels::class => [
470 'depends' => [
471 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaTypesShowitem::class,
472 ],
473 ],
474 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaFlexPrepare::class => [
475 'depends' => [
476 \TYPO3\CMS\Backend\Form\FormDataProvider\InitializeProcessedTca::class,
477 \TYPO3\CMS\Backend\Form\FormDataProvider\UserTsConfig::class,
478 \TYPO3\CMS\Backend\Form\FormDataProvider\PageTsConfigMerged::class,
479 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaColumnsRemoveUnused::class,
480 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaColumnsProcessFieldLabels::class,
481 ],
482 ],
483 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaFlexProcess::class => [
484 'depends' => [
485 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaFlexPrepare::class,
486 ],
487 ],
488 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaText::class => [
489 'depends' => [
490 \TYPO3\CMS\Backend\Form\FormDataProvider\InitializeProcessedTca::class,
491 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaFlexProcess::class,
492 ],
493 ],
494 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaRadioItems::class => [
495 'depends' => [
496 \TYPO3\CMS\Backend\Form\FormDataProvider\InitializeProcessedTca::class,
497 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaText::class,
498 ],
499 ],
500 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaCheckboxItems::class => [
501 'depends' => [
502 \TYPO3\CMS\Backend\Form\FormDataProvider\InitializeProcessedTca::class,
503 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaRadioItems::class
504 ],
505 ],
506 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaSelectItems::class => [
507 'depends' => [
508 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabasePageRootline::class,
509 \TYPO3\CMS\Backend\Form\FormDataProvider\PageTsConfigMerged::class,
510 \TYPO3\CMS\Backend\Form\FormDataProvider\InitializeProcessedTca::class,
511 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaTypesShowitem::class,
512 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaColumnsRemoveUnused::class,
513 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaCheckboxItems::class,
514 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaFlexPrepare::class,
515 ],
516 ],
517 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaSelectTreeItems::class => [
518 'depends' => [
519 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaSelectItems::class,
520 ],
521 ],
522 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaInlineConfiguration::class => [
523 'depends' => [
524 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaSelectTreeItems::class,
525 ],
526 ],
527 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaInline::class => [
528 'depends' => [
529 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaInlineConfiguration::class,
530 ],
531 ],
532 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaInputPlaceholders::class => [
533 'depends' => [
534 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaInlineConfiguration::class,
535 ],
536 ],
537 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaInlineIsOnSymmetricSide::class => [
538 'depends' => [
539 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaInputPlaceholders::class,
540 ],
541 ],
542 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaRecordTitle::class => [
543 'depends' => [
544 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaInline::class,
545 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaInlineIsOnSymmetricSide::class,
546 ],
547 ],
548 \TYPO3\CMS\Backend\Form\FormDataProvider\EvaluateDisplayConditions::class => [
549 'depends' => [
550 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaRecordTitle::class,
551 ],
552 ],
553 ],
554 'tcaSelectTreeAjaxFieldData' => [
555 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseEditRow::class => [],
556 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseParentPageRow::class => [
557 'depends' => [
558 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseEditRow::class,
559 ],
560 ],
561 \TYPO3\CMS\Backend\Form\FormDataProvider\InitializeProcessedTca::class => [
562 'depends' => [
563 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseParentPageRow::class,
564 ],
565 ],
566 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseUserPermissionCheck::class => [
567 'depends' => [
568 \TYPO3\CMS\Backend\Form\FormDataProvider\InitializeProcessedTca::class,
569 ],
570 ],
571 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseEffectivePid::class => [
572 'depends' => [
573 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseParentPageRow::class,
574 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseUserPermissionCheck::class
575 ],
576 ],
577 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabasePageRootline::class => [
578 'depends' => [
579 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseEffectivePid::class,
580 ],
581 ],
582 \TYPO3\CMS\Backend\Form\FormDataProvider\UserTsConfig::class => [
583 'depends' => [
584 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabasePageRootline::class,
585 ],
586 ],
587 \TYPO3\CMS\Backend\Form\FormDataProvider\PageTsConfig::class => [
588 'depends' => [
589 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseEffectivePid::class,
590 \TYPO3\CMS\Backend\Form\FormDataProvider\UserTsConfig::class
591 ],
592 ],
593 \TYPO3\CMS\Backend\Form\FormDataProvider\ParentPageTca::class => [
594 'depends' => [
595 \TYPO3\CMS\Backend\Form\FormDataProvider\PageTsConfig::class,
596 ],
597 ],
598 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRowInitializeNew::class => [
599 'depends' => [
600 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseUserPermissionCheck::class,
601 \TYPO3\CMS\Backend\Form\FormDataProvider\UserTsConfig::class,
602 \TYPO3\CMS\Backend\Form\FormDataProvider\PageTsConfig::class,
603 \TYPO3\CMS\Backend\Form\FormDataProvider\ParentPageTca::class,
604 ],
605 ],
606 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseUniqueUidNewRow::class => [
607 'depends' => [
608 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRowInitializeNew::class,
609 ],
610 ],
611 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRowDefaultValues::class => [
612 'depends' => [
613 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRowInitializeNew::class,
614 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseUniqueUidNewRow::class,
615 ],
616 ],
617 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseSystemLanguageRows::class => [
618 'depends' => [
619 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRowDefaultValues::class,
620 ],
621 ],
622 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabasePageLanguageOverlayRows::class => [
623 'depends' => [
624 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseSystemLanguageRows::class
625 ],
626 ],
627 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseLanguageRows::class => [
628 'depends' => [
629 // Language stuff depends on user ts, but it *may* also depend on new row defaults
630 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRowInitializeNew::class,
631 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabasePageLanguageOverlayRows::class,
632 ],
633 ],
634 \TYPO3\CMS\Backend\Form\FormDataProvider\PageTsConfigMerged::class => [
635 'depends' => [
636 \TYPO3\CMS\Backend\Form\FormDataProvider\PageTsConfig::class,
637 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseLanguageRows::class,
638 ],
639 ],
640 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaColumnsOverrides::class => [
641 'depends' => [
642 \TYPO3\CMS\Backend\Form\FormDataProvider\PageTsConfigMerged::class,
643 ],
644 ],
645 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaFlexPrepare::class => [
646 'depends' => [
647 \TYPO3\CMS\Backend\Form\FormDataProvider\UserTsConfig::class,
648 \TYPO3\CMS\Backend\Form\FormDataProvider\PageTsConfigMerged::class,
649 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaColumnsOverrides::class,
650 ],
651 ],
652 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaFlexProcess::class => [
653 'depends' => [
654 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaFlexPrepare::class,
655 ],
656 ],
657 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaSelectTreeItems::class => [
658 'depends' => [
659 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaFlexProcess::class,
660 ],
661 ],
662 ],
663 'flexFormSegment' => [
664 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRowDefaultValues::class => [],
665 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaColumnsProcessFieldLabels::class => [
666 'depends' => [
667 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRowDefaultValues::class,
668 ],
669 ],
670 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaGroup::class => [
671 'depends' => [
672 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaColumnsProcessFieldLabels::class,
673 ],
674 ],
675 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaText::class => [
676 'depends' => [
677 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRowDefaultValues::class,
678 ],
679 ],
680 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaRadioItems::class => [
681 'depends' => [
682 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRowDefaultValues::class,
683 ],
684 ],
685 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaCheckboxItems::class => [
686 'depends' => [
687 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRowDefaultValues::class,
688 ],
689 ],
690 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaSelectItems::class => [
691 'depends' => [
692 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRowDefaultValues::class,
693 ],
694 ],
695 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaSelectTreeItems::class => [
696 'depends' => [
697 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaSelectItems::class,
698 ],
699 ],
700 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaInlineExpandCollapseState::class => [
701 'depends' => [
702 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaSelectTreeItems::class,
703 ],
704 ],
705 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaInlineConfiguration::class => [
706 'depends' => [
707 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaInlineExpandCollapseState::class,
708 ],
709 ],
710 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaInline::class => [
711 'depends' => [
712 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaInlineConfiguration::class,
713 ],
714 ],
715 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaInputPlaceholders::class => [
716 'depends' => [
717 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRowDefaultValues::class,
718 ]
719 ]
720 ],
721 'tcaInputPlaceholderRecord' => [
722 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseEditRow::class => [],
723 \TYPO3\CMS\Backend\Form\FormDataProvider\InitializeProcessedTca::class => [
724 'depends' => [
725 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseEditRow::class,
726 ],
727 ],
728 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRowDefaultValues::class => [
729 'depends' => [
730 \TYPO3\CMS\Backend\Form\FormDataProvider\InitializeProcessedTca::class,
731 ],
732 ],
733 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaGroup::class => [
734 'depends' => [
735 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRowDefaultValues::class,
736 ],
737 ],
738 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRecordTypeValue::class => [
739 'depends' => [
740 \TYPO3\CMS\Backend\Form\FormDataProvider\InitializeProcessedTca::class,
741 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaGroup::class,
742 ],
743 ],
744 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaColumnsRemoveUnused::class => [
745 'depends' => [
746 \TYPO3\CMS\Backend\Form\FormDataProvider\InitializeProcessedTca::class,
747 \TYPO3\CMS\Backend\Form\FormDataProvider\DatabaseRecordTypeValue::class,
748 ],
749 ],
750 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaText::class => [
751 'depends' => [
752 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaColumnsRemoveUnused::class,
753 ],
754 ],
755 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaRadioItems::class => [
756 'depends' => [
757 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaText::class
758 ],
759 ],
760 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaCheckboxItems::class => [
761 'depends' => [
762 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaColumnsRemoveUnused::class,
763 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaRadioItems::class
764 ],
765 ],
766 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaSelectItems::class => [
767 'depends' => [
768 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaColumnsRemoveUnused::class,
769 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaCheckboxItems::class,
770 ],
771 ],
772 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaSelectTreeItems::class => [
773 'depends' => [
774 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaSelectItems::class,
775 ],
776 ],
777 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaInlineExpandCollapseState::class => [
778 'depends' => [
779 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaSelectTreeItems::class,
780 ],
781 ],
782 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaInlineConfiguration::class => [
783 'depends' => [
784 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaInlineExpandCollapseState::class,
785 ],
786 ],
787 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaInline::class => [
788 'depends' => [
789 \TYPO3\CMS\Backend\Form\FormDataProvider\TcaInlineConfiguration::class,
790 ],
791 ],
792 ],
793 ],
794 ],
795 ],
796 'EXT' => [ // Options related to the Extension Management
797 'allowGlobalInstall' => false,
798 'allowLocalInstall' => true,
799 'excludeForPackaging' => '(?:\\..*(?!htaccess)|.*~|.*\\.swp|.*\\.bak|\\.sass-cache|node_modules|bower_components)',
800 'extConf' => [
801 'saltedpasswords' => serialize([
802 'BE.' => [
803 'saltedPWHashingMethod' => \TYPO3\CMS\Saltedpasswords\Salt\PhpassSalt::class,
804 'forceSalted' => 0,
805 'onlyAuthService' => 0,
806 'updatePasswd' => 1,
807 ],
808 'FE.' => [
809 'enabled' => 0,
810 'saltedPWHashingMethod' => \TYPO3\CMS\Saltedpasswords\Salt\PhpassSalt::class,
811 'forceSalted' => 0,
812 'onlyAuthService' => 0,
813 'updatePasswd' => 1,
814 ],
815 ]),
816 ],
817 'runtimeActivatedPackages' => [],
818 ],
819 'BE' => [
820 // Backend Configuration.
821 'languageDebug' => false,
822 'fileadminDir' => 'fileadmin/',
823 'RTE_imageStorageDir' => 'uploads/',
824 'lockRootPath' => '',
825 'userHomePath' => '',
826 'groupHomePath' => '',
827 'userUploadDir' => '',
828 'warning_email_addr' => '',
829 'warning_mode' => '',
830 'lockIP' => 4,
831 'sessionTimeout' => 28800, // a backend user logged in for 8 hours
832 'IPmaskList' => '',
833 'lockBeUserToDBmounts' => true,
834 'lockSSL' => false,
835 'lockSSLPort' => 0,
836 'enabledBeUserIPLock' => true,
837 'cookieDomain' => '',
838 'cookieName' => 'be_typo_user',
839 'loginSecurityLevel' => '',
840 'showRefreshLoginPopup' => false,
841 'adminOnly' => 0,
842 'disable_exec_function' => false,
843 'compressionLevel' => 0,
844 'installToolPassword' => '',
845 'checkStoredRecords' => true,
846 'checkStoredRecordsLoose' => true,
847 'pageTree' => [
848 'preloadLimit' => 50
849 ],
850 'defaultUserTSconfig' => 'options.enableBookmarks=1
851 options.file_list.enableDisplayBigControlPanel=selectable
852 options.file_list.enableDisplayThumbnails=selectable
853 options.file_list.enableClipBoard=selectable
854 options.file_list.thumbnail {
855 width = 64
856 height = 64
857 }
858 options.pageTree {
859 doktypesToShowInNewPageDragArea = 1,6,4,7,3,254,255,199
860 }
861
862 options.contextMenu {
863 table {
864 pages {
865 disableItems =
866 tree.disableItems =
867 }
868 sys_file {
869 disableItems =
870 tree.disableItems =
871 }
872 sys_filemounts {
873 disableItems =
874 tree.disableItems =
875 }
876 }
877 }
878 ',
879 // String (exclude). Enter lines of default backend user/group TSconfig.
880 'defaultPageTSconfig' => '
881 mod.web_list.enableDisplayBigControlPanel=selectable
882 mod.web_list.enableClipBoard=selectable
883 mod.web_list.enableLocalizationView=selectable
884 mod.web_list.tableDisplayOrder {
885 be_users.after = be_groups
886 sys_filemounts.after = be_users
887 sys_file_storage.after = sys_filemounts
888 sys_language.after = sys_file_storage
889 pages_language_overlay.before = pages
890 fe_users.after = fe_groups
891 fe_users.before = pages
892 sys_template.after = pages
893 backend_layout.after = pages
894 sys_domain.after = sys_template
895 tt_content.after = pages,backend_layout,sys_template
896 sys_category.after = tt_content
897 }
898 mod.web_list.searchLevel.items {
899 -1 = EXT:lang/Resources/Private/Language/locallang_core.xlf:labels.searchLevel.infinite
900 0 = EXT:lang/Resources/Private/Language/locallang_core.xlf:labels.searchLevel.0
901 1 = EXT:lang/Resources/Private/Language/locallang_core.xlf:labels.searchLevel.1
902 2 = EXT:lang/Resources/Private/Language/locallang_core.xlf:labels.searchLevel.2
903 3 = EXT:lang/Resources/Private/Language/locallang_core.xlf:labels.searchLevel.3
904 4 = EXT:lang/Resources/Private/Language/locallang_core.xlf:labels.searchLevel.4
905 }
906 mod.wizards.newRecord.pages.show.pageInside=1
907 mod.wizards.newRecord.pages.show.pageAfter=1
908 mod.wizards.newRecord.pages.show.pageSelectPosition=1
909 mod.web_view.previewFrameWidths {
910
911 1920.label = LLL:EXT:viewpage/Resources/Private/Language/locallang.xlf:computer
912 1920.type = desktop
913 1920.width = 1920
914 1920.height = 1080
915
916 1366.label = LLL:EXT:viewpage/Resources/Private/Language/locallang.xlf:computer
917 1366.type = desktop
918 1366.width = 1366
919 1366.height = 768
920
921 1280.label = LLL:EXT:viewpage/Resources/Private/Language/locallang.xlf:computer
922 1280.type = desktop
923 1280.width = 1280
924 1280.height = 1024
925
926 1024.label = LLL:EXT:viewpage/Resources/Private/Language/locallang.xlf:computer
927 1024.type = desktop
928 1024.width = 1024
929 1024.height = 768
930
931 nexus7.label = Nexus 7
932 nexus7.type = tablet
933 nexus7.width = 600
934 nexus7.height = 960
935
936 nexus6p.label = Nexus 6P
937 nexus6p.type = mobile
938 nexus6p.width = 411
939 nexus6p.height = 731
940
941 ipadpro.label = iPad Pro
942 ipadpro.type = tablet
943 ipadpro.width = 1024
944 ipadpro.height = 1366
945
946 ipadair.label = iPad Air
947 ipadair.type = tablet
948 ipadair.width = 768
949 ipadair.height = 1024
950
951 iphone7plus.label = iPhone 7 Plus
952 iphone7plus.type = mobile
953 iphone7plus.width = 414
954 iphone7plus.height = 736
955
956 iphone6.label = iPhone 6
957 iphone6.type = mobile
958 iphone6.width = 375
959 iphone6.height = 667
960
961 iphone5.label = iPhone 5
962 iphone5.type = mobile
963 iphone5.width = 320
964 iphone5.height = 568
965
966 iphone4.label = iPhone 4
967 iphone4.type = mobile
968 iphone4.width = 320
969 iphone4.height = 480
970
971 }
972 ',
973 // String (exclude).Enter lines of default Page TSconfig.
974 'defaultPermissions' => [],
975 'defaultUC' => [],
976 // The control of file extensions goes in two categories. Webspace and Ftpspace. Webspace is folders accessible from a webbrowser (below TYPO3_DOCUMENT_ROOT) and ftpspace is everything else.
977 // The control is done like this: If an extension matches 'allow' then the check returns TRUE. If not and an extension matches 'deny' then the check return FALSE. If no match at all, returns TRUE.
978 // You list extensions comma-separated. If the value is a '*' every extension is matched
979 // If no file extension, TRUE is returned if 'allow' is '*', FALSE if 'deny' is '*' and TRUE if none of these matches
980 // This configuration below accepts everything in ftpspace and everything in webspace except php3,php4,php5 or php files
981 'fileExtensions' => [
982 'webspace' => ['allow' => '', 'deny' => PHP_EXTENSIONS_DEFAULT]
983 ],
984 'customPermOptions' => [], // Array with sets of custom permission options. Syntax is; 'key' => array('header' => 'header string, language split', 'items' => array('key' => array('label, language split','icon reference', 'Description text, language split'))). Keys cannot contain ":|," characters.
985 'fileDenyPattern' => FILE_DENY_PATTERN_DEFAULT,
986 'interfaces' => 'backend',
987 'explicitADmode' => 'explicitDeny',
988 'flexformForceCDATA' => 0,
989 'explicitConfirmationOfTranslation' => false,
990 'versionNumberInFilename' => false,
991 'debug' => false,
992 'toolbarItems' => [], // Array: Registered toolbar items classes
993 'HTTP' => [
994 'Response' => [
995 'Headers' => ['clickJackingProtection' => 'X-Frame-Options: SAMEORIGIN']
996 ]
997 ],
998 ],
999 'FE' => [ // Configuration for the TypoScript frontend (FE). Nothing here relates to the administration backend!
1000 'addAllowedPaths' => '',
1001 'debug' => false,
1002 'compressionLevel' => 0,
1003 'pageNotFound_handling' => '',
1004 'pageNotFound_handling_statheader' => 'HTTP/1.0 404 Not Found',
1005 'pageNotFoundOnCHashError' => true,
1006 'pageUnavailable_handling' => '',
1007 'pageUnavailable_handling_statheader' => 'HTTP/1.0 503 Service Temporarily Unavailable',
1008 'pageUnavailable_force' => false,
1009 'addRootLineFields' => '',
1010 'checkFeUserPid' => true,
1011 'lockIP' => 2,
1012 'loginSecurityLevel' => '',
1013 'lifetime' => 0,
1014 'sessionDataLifetime' => 86400,
1015 'permalogin' => 0,
1016 'cookieDomain' => '',
1017 'cookieName' => 'fe_typo_user',
1018 'defaultUserTSconfig' => '',
1019 'defaultTypoScript_constants' => '',
1020 'defaultTypoScript_constants.' => [], // Lines of TS to include after a static template with the uid = the index in the array (Constants)
1021 'defaultTypoScript_setup' => '',
1022 'defaultTypoScript_setup.' => [], // Lines of TS to include after a static template with the uid = the index in the array (Setup)
1023 'additionalAbsRefPrefixDirectories' => '',
1024 'IPmaskMountGroups' => [ // This allows you to specify an array of IPmaskLists/fe_group-uids. If the REMOTE_ADDR of the user matches an IPmaskList,
1025 // array('IPmaskList_1','fe_group uid'), array('IPmaskList_2','fe_group uid')
1026 ],
1027 'get_url_id_token' => '#get_URL_ID_TOK#',
1028 'enable_mount_pids' => true,
1029 'hidePagesIfNotTranslatedByDefault' => false,
1030 'eID_include' => [], // Array of key/value pairs where key is "tx_[ext]_[optional suffix]" and value is relative filename of class to include. Key is used as "?eID=" for \TYPO3\CMS\Frontend\Http\RequestHandlerRequestHandler to include the code file which renders the page from that point. (Useful for functionality that requires a low initialization footprint, eg. frontend ajax applications)
1031 'disableNoCacheParameter' => false,
1032 'cacheHash' => [
1033 'cachedParametersWhiteList' => [],
1034 'excludedParameters' => ['L', 'pk_campaign', 'pk_kwd', 'utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content'],
1035 'requireCacheHashPresenceParameters' => [],
1036 'excludeAllEmptyParameters' => false,
1037 'excludedParametersIfEmpty' => []
1038 ],
1039 'workspacePreviewLogoutTemplate' => '',
1040 'versionNumberInFilename' => 'querystring',
1041 'contentRenderingTemplates' => [], // Array to define the TypoScript parts that define the main content rendering. Extensions like "fluid_styled_content" provide content rendering templates. Other extensions like "felogin" or "indexed search" extend these templates and their TypoScript parts are added directly after the content templates. See EXT:fluid_styled_content/ext_localconf.php and EXT:frontend/Classes/TypoScript/TemplateService.php
1042 'ContentObjects' => [], // Array to register ContentObject (cObjects) like TEXT or HMENU within ext_localconf.php, see EXT:frontend/ext_localconf.php
1043 'typolinkBuilder' => [ // Matches the LinkService implementations for generating URL, link text via typolink
1044 'page' => \TYPO3\CMS\Frontend\Typolink\PageLinkBuilder::class,
1045 'file' => \TYPO3\CMS\Frontend\Typolink\FileOrFolderLinkBuilder::class,
1046 'folder' => \TYPO3\CMS\Frontend\Typolink\FileOrFolderLinkBuilder::class,
1047 'url' => \TYPO3\CMS\Frontend\Typolink\ExternalUrlLinkBuilder::class,
1048 'email' => \TYPO3\CMS\Frontend\Typolink\EmailLinkBuilder::class,
1049 'record' => \TYPO3\CMS\Frontend\Typolink\DatabaseRecordLinkBuilder::class,
1050 'unknown' => \TYPO3\CMS\Frontend\Typolink\LegacyLinkBuilder::class,
1051 ],
1052 ],
1053 'MAIL' => [ // Mail configurations to tune how \TYPO3\CMS\Core\Mail\ classes will send their mails.
1054 'transport' => 'mail',
1055 'transport_smtp_server' => 'localhost:25',
1056 'transport_smtp_encrypt' => '',
1057 'transport_smtp_username' => '',
1058 'transport_smtp_password' => '',
1059 'transport_sendmail_command' => '',
1060 'transport_mbox_file' => '',
1061 'defaultMailFromAddress' => '',
1062 'defaultMailFromName' => ''
1063 ],
1064 'HTTP' => [ // HTTP configuration to tune how TYPO3 behaves on HTTP requests made by TYPO3. Have a look at http://docs.guzzlephp.org/en/latest/request-options.html for some background information on those settings.
1065 'allow_redirects' => [ // Mixed, set to false if you want to allow redirects, or use it as an array to add more values,
1066 'max' => 5, // Integer: Maximum number of tries before an exception is thrown.
1067 'strict' => false // Boolean: Whether to keep request method on redirects via status 301 and 302 (TRUE, needed for compatibility with <a href="http://www.faqs.org/rfcs/rfc2616">RFC 2616</a>) or switch to GET (FALSE, needed for compatibility with most browsers).
1068 ],
1069 'cert' => null,
1070 'connect_timeout' => 10,
1071 'proxy' => null,
1072 'ssl_key' => null,
1073 'timeout' => 0,
1074 'verify' => true,
1075 'version' => '1.1',
1076 'headers' => [ // Additional HTTP headers sent by every request TYPO3 executes.
1077 'User-Agent' => 'TYPO3' // String: Default user agent. Defaults to TYPO3.
1078 ]
1079 ],
1080 'LOG' => [
1081 'writerConfiguration' => [
1082 \TYPO3\CMS\Core\Log\LogLevel::WARNING => [
1083 \TYPO3\CMS\Core\Log\Writer\FileWriter::class => []
1084 ]
1085 ],
1086 'TYPO3' => [
1087 'CMS' => [
1088 'Core' => [
1089 'Resource' => [
1090 'ResourceStorage' => [
1091 'writerConfiguration' => [
1092 \TYPO3\CMS\Core\Log\LogLevel::ERROR => [
1093 \TYPO3\CMS\Core\Log\Writer\FileWriter::class => [],
1094 \TYPO3\CMS\Core\Log\Writer\DatabaseWriter::class => []
1095 ]
1096 ]
1097 ]
1098 ]
1099 ]
1100 ]
1101 ]
1102 ],
1103 'USER' => [],
1104 'SC_OPTIONS' => [ // Here you can more or less freely define additional configuration for scripts in TYPO3. Of course the features supported depends on the script. See documentation "Inside TYPO3" for examples. Keys in the array are the relative path of a script (for output scripts it should be the "script ID" as found in a comment in the HTML header ) and values can then be anything that scripts wants to define for itself. The key "GLOBAL" is reserved.
1105 'GLOBAL' => [
1106 'softRefParser' => [
1107 'substitute' => \TYPO3\CMS\Core\Database\SoftReferenceIndex::class,
1108 'notify' => \TYPO3\CMS\Core\Database\SoftReferenceIndex::class,
1109 'images' => \TYPO3\CMS\Core\Database\SoftReferenceIndex::class,
1110 'typolink' => \TYPO3\CMS\Core\Database\SoftReferenceIndex::class,
1111 'typolink_tag' => \TYPO3\CMS\Core\Database\SoftReferenceIndex::class,
1112 'ext_fileref' => \TYPO3\CMS\Core\Database\SoftReferenceIndex::class,
1113 'email' => \TYPO3\CMS\Core\Database\SoftReferenceIndex::class,
1114 'url' => \TYPO3\CMS\Core\Database\SoftReferenceIndex::class,
1115 ],
1116 ],
1117 'ext/install' => [
1118 'update' => [],
1119 ],
1120 ],
1121 'SVCONF' => [],
1122 ];