90 lines
4.4 KiB
PHP
90 lines
4.4 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
use TYPO3\CMS\Core\Authentication\AuthenticationService;
|
|
use TYPO3\CMS\Core\Controller\FileDumpController;
|
|
use TYPO3\CMS\Core\Hooks\BackendUserPasswordCheck;
|
|
use TYPO3\CMS\Core\Hooks\CreateSiteConfiguration;
|
|
use TYPO3\CMS\Core\Hooks\DestroySessionHook;
|
|
use TYPO3\CMS\Core\Hooks\PagesTsConfigGuard;
|
|
use TYPO3\CMS\Core\Hooks\SystemMaintainerAllowanceCheck;
|
|
use TYPO3\CMS\Core\Hooks\UpdateFileIndexEntry;
|
|
use TYPO3\CMS\Core\MetaTag\EdgeMetaTagManager;
|
|
use TYPO3\CMS\Core\MetaTag\Html5MetaTagManager;
|
|
use TYPO3\CMS\Core\MetaTag\MetaTagManagerRegistry;
|
|
use TYPO3\CMS\Core\Resource\MimeTypeCompatibilityTypeGuesser;
|
|
use TYPO3\CMS\Core\Resource\Security\FileMetadataPermissionsAspect;
|
|
use TYPO3\CMS\Core\Resource\Security\FilePermissionAspect;
|
|
use TYPO3\CMS\Core\Resource\Security\SvgHookHandler;
|
|
use TYPO3\CMS\Core\Resource\TextExtraction\PlainTextExtractor;
|
|
use TYPO3\CMS\Core\Resource\TextExtraction\TextExtractorRegistry;
|
|
use TYPO3\CMS\Core\Type\File\FileInfo;
|
|
use TYPO3\CMS\Core\Utility\ExtensionManagementUtility;
|
|
use TYPO3\CMS\Core\Utility\GeneralUtility;
|
|
|
|
defined('TYPO3') or die();
|
|
|
|
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS'][GeneralUtility::class]['moveUploadedFile'][] = SvgHookHandler::class . '->processMoveUploadedFile';
|
|
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['processDatamapClass'][] = FileMetadataPermissionsAspect::class;
|
|
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['processDatamapClass'][] = BackendUserPasswordCheck::class;
|
|
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['processDatamapClass'][] = SystemMaintainerAllowanceCheck::class;
|
|
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['checkModifyAccessList'][] = FileMetadataPermissionsAspect::class;
|
|
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['checkModifyAccessList'][] = FilePermissionAspect::class;
|
|
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['processDatamapClass'][] = FilePermissionAspect::class;
|
|
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['processDatamapClass'][] = DestroySessionHook::class;
|
|
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['processDatamapClass'][] = PagesTsConfigGuard::class;
|
|
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['processDatamapClass'][CreateSiteConfiguration::class] = CreateSiteConfiguration::class;
|
|
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['processDatamapClass'][UpdateFileIndexEntry::class] = UpdateFileIndexEntry::class;
|
|
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS'][FileInfo::class]['mimeTypeGuessers'][MimeTypeCompatibilityTypeGuesser::class] = MimeTypeCompatibilityTypeGuesser::class . '->guessMimeType';
|
|
$GLOBALS['TYPO3_CONF_VARS']['FE']['eID_include']['dumpFile'] = FileDumpController::class . '::dumpAction';
|
|
|
|
$textExtractorRegistry = GeneralUtility::makeInstance(TextExtractorRegistry::class);
|
|
$textExtractorRegistry->registerTextExtractor(PlainTextExtractor::class);
|
|
unset($textExtractorRegistry);
|
|
|
|
// Register base authentication service
|
|
ExtensionManagementUtility::addService(
|
|
'core',
|
|
'auth',
|
|
AuthenticationService::class,
|
|
[
|
|
'title' => 'User authentication',
|
|
'description' => 'Authentication with username/password.',
|
|
'subtype' => 'getUserBE,getUserFE,authUserBE,authUserFE,processLoginDataBE,processLoginDataFE',
|
|
'available' => true,
|
|
'priority' => 50,
|
|
'quality' => 50,
|
|
'os' => '',
|
|
'exec' => '',
|
|
'className' => TYPO3\CMS\Core\Authentication\AuthenticationService::class,
|
|
]
|
|
);
|
|
|
|
$metaTagManagerRegistry = GeneralUtility::makeInstance(MetaTagManagerRegistry::class);
|
|
$metaTagManagerRegistry->registerManager(
|
|
'html5',
|
|
Html5MetaTagManager::class
|
|
);
|
|
$metaTagManagerRegistry->registerManager(
|
|
'edge',
|
|
EdgeMetaTagManager::class
|
|
);
|
|
unset($metaTagManagerRegistry);
|
|
|
|
// Add module configuration
|
|
ExtensionManagementUtility::addTypoScriptSetup('
|
|
config.pageTitleProviders {
|
|
record.provider = TYPO3\CMS\Core\PageTitle\RecordPageTitleProvider
|
|
recordTitle {
|
|
provider = TYPO3\CMS\Core\PageTitle\RecordTitleProvider
|
|
before = record
|
|
}
|
|
}
|
|
');
|
|
|
|
// Register preset for sys_news
|
|
if (empty($GLOBALS['TYPO3_CONF_VARS']['RTE']['Presets']['sys_news'])) {
|
|
$GLOBALS['TYPO3_CONF_VARS']['RTE']['Presets']['sys_news'] = 'EXT:core/Configuration/RTE/SysNews.yaml';
|
|
}
|