connect( \TYPO3\CMS\Core\Resource\ResourceFactory::class, \TYPO3\CMS\Core\Resource\ResourceFactoryInterface::SIGNAL_PostProcessStorage, \TYPO3\CMS\Core\Resource\Security\StoragePermissionsAspect::class, 'addUserPermissionsToStorage' ); $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['processDatamapClass'][] = \TYPO3\CMS\Core\Resource\Security\FileMetadataPermissionsAspect::class; $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['processDatamapClass'][] = \TYPO3\CMS\Core\Hooks\BackendUserGroupIntegrityCheck::class; $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['typo3/alt_doc.php']['makeEditForm_accessCheck'][] = \TYPO3\CMS\Core\Resource\Security\FileMetadataPermissionsAspect::class . '->isAllowedToShowEditForm'; $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tceforms_inline.php']['checkAccess'][] = \TYPO3\CMS\Core\Resource\Security\FileMetadataPermissionsAspect::class . '->isAllowedToShowEditForm'; $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['checkModifyAccessList'][] = \TYPO3\CMS\Core\Resource\Security\FileMetadataPermissionsAspect::class; // PACKAGE MANAGEMENT $signalSlotDispatcher->connect( 'PackageManagement', 'packagesMayHaveChanged', \TYPO3\CMS\Core\Package\PackageManager::class, 'scanAvailablePackages' ); } $signalSlotDispatcher->connect( \TYPO3\CMS\Core\Resource\ResourceStorage::class, \TYPO3\CMS\Core\Resource\ResourceStorageInterface::SIGNAL_PostFileDelete, \TYPO3\CMS\Core\Resource\Processing\FileDeletionAspect::class, 'removeFromRepository' ); $signalSlotDispatcher->connect( \TYPO3\CMS\Core\Resource\ResourceStorage::class, \TYPO3\CMS\Core\Resource\ResourceStorageInterface::SIGNAL_PostFileAdd, \TYPO3\CMS\Core\Resource\Processing\FileDeletionAspect::class, 'cleanupProcessedFilesPostFileAdd' ); $signalSlotDispatcher->connect( \TYPO3\CMS\Core\Resource\ResourceStorage::class, \TYPO3\CMS\Core\Resource\ResourceStorageInterface::SIGNAL_PostFileReplace, \TYPO3\CMS\Core\Resource\Processing\FileDeletionAspect::class, 'cleanupProcessedFilesPostFileReplace' ); if (!\TYPO3\CMS\Core\Core\Bootstrap::usesComposerClassLoading()) { $signalSlotDispatcher->connect( \TYPO3\CMS\Extensionmanager\Service\ExtensionManagementService::class, 'hasInstalledExtensions', \TYPO3\CMS\Core\Core\ClassLoadingInformation::class, 'dumpClassLoadingInformation' ); $signalSlotDispatcher->connect( \TYPO3\CMS\Extensionmanager\Utility\InstallUtility::class, 'afterExtensionUninstall', \TYPO3\CMS\Core\Core\ClassLoadingInformation::class, 'dumpClassLoadingInformation' ); } $signalSlotDispatcher->connect( TYPO3\CMS\Core\Resource\ResourceStorage::class, \TYPO3\CMS\Core\Resource\Service\FileProcessingService::SIGNAL_PreFileProcess, \TYPO3\CMS\Core\Resource\OnlineMedia\Processing\PreviewProcessing::class, 'processFile' ); unset($signalSlotDispatcher); $GLOBALS['TYPO3_CONF_VARS']['FE']['eID_include']['dumpFile'] = \TYPO3\CMS\Core\Controller\FileDumpController::class . '::dumpAction'; /** @var \TYPO3\CMS\Core\Resource\Rendering\RendererRegistry $rendererRegistry */ $rendererRegistry = \TYPO3\CMS\Core\Resource\Rendering\RendererRegistry::getInstance(); $rendererRegistry->registerRendererClass(\TYPO3\CMS\Core\Resource\Rendering\AudioTagRenderer::class); $rendererRegistry->registerRendererClass(\TYPO3\CMS\Core\Resource\Rendering\VideoTagRenderer::class); $rendererRegistry->registerRendererClass(\TYPO3\CMS\Core\Resource\Rendering\YouTubeRenderer::class); $rendererRegistry->registerRendererClass(\TYPO3\CMS\Core\Resource\Rendering\VimeoRenderer::class); unset($rendererRegistry); $textExtractorRegistry = \TYPO3\CMS\Core\Resource\TextExtraction\TextExtractorRegistry::getInstance(); $textExtractorRegistry->registerTextExtractor(\TYPO3\CMS\Core\Resource\TextExtraction\PlainTextExtractor::class); unset($textExtractorRegistry); $extractorRegistry = \TYPO3\CMS\Core\Resource\Index\ExtractorRegistry::getInstance(); $extractorRegistry->registerExtractionService(\TYPO3\CMS\Core\Resource\OnlineMedia\Metadata\Extractor::class); unset($extractorRegistry);