3 defined('TYPO3_MODE') or die();
5 /** @var \TYPO3\CMS\Extbase\SignalSlot\Dispatcher $signalSlotDispatcher */
6 $signalSlotDispatcher = \TYPO3\CMS\Core\Utility\GeneralUtility
::makeInstance(\TYPO3\CMS\Extbase\SignalSlot\Dispatcher
::class);
9 $signalSlotDispatcher->connect(
11 'packagesMayHaveChanged',
12 \TYPO3\CMS\Core\Package\PackageManager
::class,
13 'scanAvailablePackages'
16 // FAL security checks for backend users
17 $signalSlotDispatcher->connect(
18 \TYPO3\CMS\Core\
Resource\ResourceFactory
::class,
19 \TYPO3\CMS\Core\
Resource\ResourceFactoryInterface
::SIGNAL_PostProcessStorage
,
20 \TYPO3\CMS\Core\
Resource\Security\StoragePermissionsAspect
::class,
21 'addUserPermissionsToStorage'
24 $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['processDatamapClass'][] = \TYPO3\CMS\Core\
Resource\Security\FileMetadataPermissionsAspect
::class;
25 $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['processDatamapClass'][] = \TYPO3\CMS\Core\Hooks\BackendUserGroupIntegrityCheck
::class;
26 $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['typo3/alt_doc.php']['makeEditForm_accessCheck'][] = \TYPO3\CMS\Core\
Resource\Security\FileMetadataPermissionsAspect
::class . '->isAllowedToShowEditForm';
27 $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tceforms_inline.php']['checkAccess'][] = \TYPO3\CMS\Core\
Resource\Security\FileMetadataPermissionsAspect
::class . '->isAllowedToShowEditForm';
28 $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['checkModifyAccessList'][] = \TYPO3\CMS\Core\
Resource\Security\FileMetadataPermissionsAspect
::class;
30 $signalSlotDispatcher->connect(
31 \TYPO3\CMS\Core\
Resource\ResourceStorage
::class,
32 \TYPO3\CMS\Core\
Resource\ResourceStorageInterface
::SIGNAL_PostFileDelete
,
33 \TYPO3\CMS\Core\
Resource\Processing\FileDeletionAspect
::class,
34 'removeFromRepository'
37 $signalSlotDispatcher->connect(
38 \TYPO3\CMS\Core\
Resource\ResourceStorage
::class,
39 \TYPO3\CMS\Core\
Resource\ResourceStorageInterface
::SIGNAL_PostFileAdd
,
40 \TYPO3\CMS\Core\
Resource\Processing\FileDeletionAspect
::class,
41 'cleanupProcessedFilesPostFileAdd'
44 $signalSlotDispatcher->connect(
45 \TYPO3\CMS\Core\
Resource\ResourceStorage
::class,
46 \TYPO3\CMS\Core\
Resource\ResourceStorageInterface
::SIGNAL_PostFileReplace
,
47 \TYPO3\CMS\Core\
Resource\Processing\FileDeletionAspect
::class,
48 'cleanupProcessedFilesPostFileReplace'
51 if (!\TYPO3\CMS\Core\Core\Environment
::isComposerMode()) {
52 $signalSlotDispatcher->connect(
53 \TYPO3\CMS\Extensionmanager\Utility\InstallUtility
::class,
54 'afterExtensionInstall',
55 \TYPO3\CMS\Core\Core\ClassLoadingInformation
::class,
56 'dumpClassLoadingInformation'
58 $signalSlotDispatcher->connect(
59 \TYPO3\CMS\Extensionmanager\Utility\InstallUtility
::class,
60 'afterExtensionUninstall',
61 \TYPO3\CMS\Core\Core\ClassLoadingInformation
::class,
62 'dumpClassLoadingInformation'
65 $signalSlotDispatcher->connect(
66 TYPO3\CMS\Core\
Resource\ResourceStorage
::class,
67 \TYPO3\CMS\Core\
Resource\Service\FileProcessingService
::SIGNAL_PreFileProcess
,
68 \TYPO3\CMS\Core\
Resource\OnlineMedia\Processing\PreviewProcessing
::class,
72 $signalSlotDispatcher->connect(
73 'TYPO3\\CMS\\Install\\Service\\SqlExpectedSchemaService',
74 'tablesDefinitionIsBeingBuilt',
75 \TYPO3\CMS\Core\Cache\DatabaseSchemaService
::class,
76 'addCachingFrameworkRequiredDatabaseSchemaForSqlExpectedSchemaService'
78 $signalSlotDispatcher->connect(
79 'TYPO3\\CMS\\Install\\Service\\SqlExpectedSchemaService',
80 'tablesDefinitionIsBeingBuilt',
81 \TYPO3\CMS\Core\Category\CategoryRegistry
::class,
82 'addCategoryDatabaseSchemaToTablesDefinition'
85 unset($signalSlotDispatcher);
87 $GLOBALS['TYPO3_CONF_VARS']['FE']['eID_include']['dumpFile'] = \TYPO3\CMS\Core\Controller\FileDumpController
::class . '::dumpAction';
89 /** @var \TYPO3\CMS\Core\Resource\Rendering\RendererRegistry $rendererRegistry */
90 $rendererRegistry = \TYPO3\CMS\Core\
Resource\Rendering\RendererRegistry
::getInstance();
91 $rendererRegistry->registerRendererClass(\TYPO3\CMS\Core\
Resource\Rendering\AudioTagRenderer
::class);
92 $rendererRegistry->registerRendererClass(\TYPO3\CMS\Core\
Resource\Rendering\VideoTagRenderer
::class);
93 $rendererRegistry->registerRendererClass(\TYPO3\CMS\Core\
Resource\Rendering\YouTubeRenderer
::class);
94 $rendererRegistry->registerRendererClass(\TYPO3\CMS\Core\
Resource\Rendering\VimeoRenderer
::class);
95 unset($rendererRegistry);
97 $textExtractorRegistry = \TYPO3\CMS\Core\
Resource\TextExtraction\TextExtractorRegistry
::getInstance();
98 $textExtractorRegistry->registerTextExtractor(\TYPO3\CMS\Core\
Resource\TextExtraction\PlainTextExtractor
::class);
99 unset($textExtractorRegistry);
101 $extractorRegistry = \TYPO3\CMS\Core\
Resource\Index\ExtractorRegistry
::getInstance();
102 $extractorRegistry->registerExtractionService(\TYPO3\CMS\Core\
Resource\OnlineMedia\Metadata\Extractor
::class);
103 unset($extractorRegistry);
105 // Register base authentication service
106 \TYPO3\CMS\Core\Utility\ExtensionManagementUtility
::addService(
109 \TYPO3\CMS\Core\Authentication\AuthenticationService
::class,
111 'title' => 'User authentication',
112 'description' => 'Authentication with username/password.',
113 'subtype' => 'getUserBE,getUserFE,authUserFE,getGroupsFE,processLoginDataBE,processLoginDataFE',
119 'className' => TYPO3\CMS\Core\Authentication\AuthenticationService
::class
123 // add default notification options to every page
124 \TYPO3\CMS\Core\Utility\ExtensionManagementUtility
::addPageTSConfig(
125 'TCEMAIN.translateToMessage = Translate to %s:'
128 $metaTagManagerRegistry = \TYPO3\CMS\Core\Utility\GeneralUtility
::makeInstance(\TYPO3\CMS\Core\MetaTag\MetaTagManagerRegistry
::class);
129 $metaTagManagerRegistry->registerManager(
131 \TYPO3\CMS\Core\MetaTag\Html5MetaTagManager
::class
133 $metaTagManagerRegistry->registerManager(
135 \TYPO3\CMS\Core\MetaTag\EdgeMetaTagManager
::class
137 unset($metaTagManagerRegistry);