Commit 64d67664 authored by Wouter Wolters's avatar Wouter Wolters Committed by Anja Leichsenring
Browse files

[TASK] Use import instead of FQCN in ext_localconf.php files

Resolves: #94986
Related: #94280
Releases: master
Change-Id: Ia03641edf7d0174f68b539cb2d2c6ec502d5da45
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/70748


Tested-by: Christian Kuhn's avatarChristian Kuhn <lolli@schwarzbu.ch>
Tested-by: core-ci's avatarcore-ci <typo3@b13.com>
Tested-by: Anja Leichsenring's avatarAnja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Christian Kuhn's avatarChristian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Anja Leichsenring's avatarAnja Leichsenring <aleichsenring@ab-softlab.de>
parent c265a226
...@@ -2,69 +2,87 @@ ...@@ -2,69 +2,87 @@
declare(strict_types=1); declare(strict_types=1);
use TYPO3\CMS\Adminpanel\Controller\AjaxController;
use TYPO3\CMS\Adminpanel\Log\InMemoryLogWriter;
use TYPO3\CMS\Adminpanel\Modules\CacheModule;
use TYPO3\CMS\Adminpanel\Modules\Debug\Events;
use TYPO3\CMS\Adminpanel\Modules\Debug\Log;
use TYPO3\CMS\Adminpanel\Modules\Debug\PageTitle;
use TYPO3\CMS\Adminpanel\Modules\Debug\QueryInformation;
use TYPO3\CMS\Adminpanel\Modules\DebugModule;
use TYPO3\CMS\Adminpanel\Modules\Info\GeneralInformation;
use TYPO3\CMS\Adminpanel\Modules\Info\PhpInformation;
use TYPO3\CMS\Adminpanel\Modules\Info\RequestInformation;
use TYPO3\CMS\Adminpanel\Modules\Info\UserIntInformation;
use TYPO3\CMS\Adminpanel\Modules\InfoModule;
use TYPO3\CMS\Adminpanel\Modules\PreviewModule;
use TYPO3\CMS\Adminpanel\Modules\TsDebug\TypoScriptWaterfall;
use TYPO3\CMS\Adminpanel\Modules\TsDebugModule;
use TYPO3\CMS\Core\Log\LogLevel;
defined('TYPO3') or die(); defined('TYPO3') or die();
$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['adminpanel']['modules'] = [ $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['adminpanel']['modules'] = [
'preview' => [ 'preview' => [
'module' => \TYPO3\CMS\Adminpanel\Modules\PreviewModule::class, 'module' => PreviewModule::class,
'before' => ['cache'], 'before' => ['cache'],
], ],
'cache' => [ 'cache' => [
'module' => \TYPO3\CMS\Adminpanel\Modules\CacheModule::class, 'module' => CacheModule::class,
'after' => ['preview'], 'after' => ['preview'],
], ],
'tsdebug' => [ 'tsdebug' => [
'module' => \TYPO3\CMS\Adminpanel\Modules\TsDebugModule::class, 'module' => TsDebugModule::class,
'after' => ['edit'], 'after' => ['edit'],
'submodules' => [ 'submodules' => [
'ts-waterfall' => [ 'ts-waterfall' => [
'module' => \TYPO3\CMS\Adminpanel\Modules\TsDebug\TypoScriptWaterfall::class, 'module' => TypoScriptWaterfall::class,
], ],
], ],
], ],
'info' => [ 'info' => [
'module' => \TYPO3\CMS\Adminpanel\Modules\InfoModule::class, 'module' => InfoModule::class,
'after' => ['tsdebug'], 'after' => ['tsdebug'],
'submodules' => [ 'submodules' => [
'general' => [ 'general' => [
'module' => \TYPO3\CMS\Adminpanel\Modules\Info\GeneralInformation::class, 'module' => GeneralInformation::class,
], ],
'request' => [ 'request' => [
'module' => \TYPO3\CMS\Adminpanel\Modules\Info\RequestInformation::class, 'module' => RequestInformation::class,
], ],
'phpinfo' => [ 'phpinfo' => [
'module' => \TYPO3\CMS\Adminpanel\Modules\Info\PhpInformation::class, 'module' => PhpInformation::class,
], ],
'userint' => [ 'userint' => [
'module' => \TYPO3\CMS\Adminpanel\Modules\Info\UserIntInformation::class, 'module' => UserIntInformation::class,
], ],
], ],
], ],
'debug' => [ 'debug' => [
'module' => \TYPO3\CMS\Adminpanel\Modules\DebugModule::class, 'module' => DebugModule::class,
'after' => ['info'], 'after' => ['info'],
'submodules' => [ 'submodules' => [
'log' => [ 'log' => [
'module' => \TYPO3\CMS\Adminpanel\Modules\Debug\Log::class, 'module' => Log::class,
], ],
'queryInformation' => [ 'queryInformation' => [
'module' => \TYPO3\CMS\Adminpanel\Modules\Debug\QueryInformation::class, 'module' => QueryInformation::class,
], ],
'pageTitle' => [ 'pageTitle' => [
'module' => \TYPO3\CMS\Adminpanel\Modules\Debug\PageTitle::class, 'module' => PageTitle::class,
], ],
'events' => [ 'events' => [
'module' => \TYPO3\CMS\Adminpanel\Modules\Debug\Events::class, 'module' => Events::class,
] ]
], ],
], ],
]; ];
$GLOBALS['TYPO3_CONF_VARS']['FE']['eID_include']['adminPanel_save'] $GLOBALS['TYPO3_CONF_VARS']['FE']['eID_include']['adminPanel_save']
= \TYPO3\CMS\Adminpanel\Controller\AjaxController::class . '::saveDataAction'; = AjaxController::class . '::saveDataAction';
// The admin panel has a module to show log messages. Register a debug logger to gather those. // The admin panel has a module to show log messages. Register a debug logger to gather those.
$GLOBALS['TYPO3_CONF_VARS']['LOG']['writerConfiguration'][\TYPO3\CMS\Core\Log\LogLevel::DEBUG][\TYPO3\CMS\Adminpanel\Log\InMemoryLogWriter::class] = []; $GLOBALS['TYPO3_CONF_VARS']['LOG']['writerConfiguration'][LogLevel::DEBUG][InMemoryLogWriter::class] = [];
if (!is_array($GLOBALS['TYPO3_CONF_VARS']['SYS']['caching']['cacheConfigurations']['adminpanel_requestcache'] ?? null)) { if (!is_array($GLOBALS['TYPO3_CONF_VARS']['SYS']['caching']['cacheConfigurations']['adminpanel_requestcache'] ?? null)) {
$GLOBALS['TYPO3_CONF_VARS']['SYS']['caching']['cacheConfigurations']['adminpanel_requestcache'] = []; $GLOBALS['TYPO3_CONF_VARS']['SYS']['caching']['cacheConfigurations']['adminpanel_requestcache'] = [];
......
...@@ -2,24 +2,38 @@ ...@@ -2,24 +2,38 @@
declare(strict_types=1); declare(strict_types=1);
use TYPO3\CMS\Backend\Backend\Avatar\DefaultAvatarProvider;
use TYPO3\CMS\Backend\Backend\ToolbarItems\ClearCacheToolbarItem;
use TYPO3\CMS\Backend\Backend\ToolbarItems\HelpToolbarItem;
use TYPO3\CMS\Backend\Backend\ToolbarItems\LiveSearchToolbarItem;
use TYPO3\CMS\Backend\Backend\ToolbarItems\ShortcutToolbarItem;
use TYPO3\CMS\Backend\Backend\ToolbarItems\SystemInformationToolbarItem;
use TYPO3\CMS\Backend\Backend\ToolbarItems\UserToolbarItem;
use TYPO3\CMS\Backend\LoginProvider\UsernamePasswordLoginProvider;
use TYPO3\CMS\Backend\Preview\StandardPreviewRendererResolver;
use TYPO3\CMS\Backend\Provider\PageTsBackendLayoutDataProvider;
use TYPO3\CMS\Backend\Security\EmailLoginNotification;
use TYPO3\CMS\Backend\Security\FailedLoginAttemptNotification;
use TYPO3\CMS\Core\Utility\ExtensionManagementUtility;
defined('TYPO3') or die(); defined('TYPO3') or die();
$GLOBALS['TYPO3_CONF_VARS']['BE']['toolbarItems'][1435433106] = \TYPO3\CMS\Backend\Backend\ToolbarItems\ClearCacheToolbarItem::class; $GLOBALS['TYPO3_CONF_VARS']['BE']['toolbarItems'][1435433106] = ClearCacheToolbarItem::class;
$GLOBALS['TYPO3_CONF_VARS']['BE']['toolbarItems'][1435433107] = \TYPO3\CMS\Backend\Backend\ToolbarItems\HelpToolbarItem::class; $GLOBALS['TYPO3_CONF_VARS']['BE']['toolbarItems'][1435433107] = HelpToolbarItem::class;
$GLOBALS['TYPO3_CONF_VARS']['BE']['toolbarItems'][1435433108] = \TYPO3\CMS\Backend\Backend\ToolbarItems\LiveSearchToolbarItem::class; $GLOBALS['TYPO3_CONF_VARS']['BE']['toolbarItems'][1435433108] = LiveSearchToolbarItem::class;
$GLOBALS['TYPO3_CONF_VARS']['BE']['toolbarItems'][1435433109] = \TYPO3\CMS\Backend\Backend\ToolbarItems\ShortcutToolbarItem::class; $GLOBALS['TYPO3_CONF_VARS']['BE']['toolbarItems'][1435433109] = ShortcutToolbarItem::class;
$GLOBALS['TYPO3_CONF_VARS']['BE']['toolbarItems'][1435433110] = \TYPO3\CMS\Backend\Backend\ToolbarItems\SystemInformationToolbarItem::class; $GLOBALS['TYPO3_CONF_VARS']['BE']['toolbarItems'][1435433110] = SystemInformationToolbarItem::class;
$GLOBALS['TYPO3_CONF_VARS']['BE']['toolbarItems'][1435433111] = \TYPO3\CMS\Backend\Backend\ToolbarItems\UserToolbarItem::class; $GLOBALS['TYPO3_CONF_VARS']['BE']['toolbarItems'][1435433111] = UserToolbarItem::class;
$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['backend']['loginProviders'][1433416747] = [ $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['backend']['loginProviders'][1433416747] = [
'provider' => \TYPO3\CMS\Backend\LoginProvider\UsernamePasswordLoginProvider::class, 'provider' => UsernamePasswordLoginProvider::class,
'sorting' => 50, 'sorting' => 50,
'icon-class' => 'fa-key', 'icon-class' => 'fa-key',
'label' => 'LLL:EXT:backend/Resources/Private/Language/locallang.xlf:login.link' 'label' => 'LLL:EXT:backend/Resources/Private/Language/locallang.xlf:login.link'
]; ];
$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['backend']['avatarProviders']['defaultAvatarProvider'] = [ $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['backend']['avatarProviders']['defaultAvatarProvider'] = [
'provider' => \TYPO3\CMS\Backend\Backend\Avatar\DefaultAvatarProvider::class 'provider' => DefaultAvatarProvider::class
]; ];
// Register search key shortcuts // Register search key shortcuts
...@@ -28,14 +42,14 @@ $GLOBALS['TYPO3_CONF_VARS']['SYS']['livesearch']['page'] = 'pages'; ...@@ -28,14 +42,14 @@ $GLOBALS['TYPO3_CONF_VARS']['SYS']['livesearch']['page'] = 'pages';
// Register standard preview renderer resolver implementation. // Register standard preview renderer resolver implementation.
// Resolves PreviewRendererInterface implementations for a given table and record. // Resolves PreviewRendererInterface implementations for a given table and record.
// Can be replaced with custom implementation by overriding this value in extensions. // Can be replaced with custom implementation by overriding this value in extensions.
$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['backend']['previewRendererResolver'] = \TYPO3\CMS\Backend\Preview\StandardPreviewRendererResolver::class; $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['backend']['previewRendererResolver'] = StandardPreviewRendererResolver::class;
// Include base TSconfig setup // Include base TSconfig setup
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addPageTSConfig( ExtensionManagementUtility::addPageTSConfig(
"@import 'EXT:backend/Configuration/TsConfig/Page/Mod/Wizards/NewContentElement.tsconfig'" "@import 'EXT:backend/Configuration/TsConfig/Page/Mod/Wizards/NewContentElement.tsconfig'"
); );
// Register BackendLayoutDataProvider for PageTs // Register BackendLayoutDataProvider for PageTs
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['BackendLayoutDataProvider']['pagets'] = \TYPO3\CMS\Backend\Provider\PageTsBackendLayoutDataProvider::class; $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['BackendLayoutDataProvider']['pagets'] = PageTsBackendLayoutDataProvider::class;
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_userauthgroup.php']['backendUserLogin']['sendEmailOnLogin'] = \TYPO3\CMS\Backend\Security\EmailLoginNotification::class . '->emailAtLogin'; $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_userauthgroup.php']['backendUserLogin']['sendEmailOnLogin'] = EmailLoginNotification::class . '->emailAtLogin';
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_userauth.php']['postLoginFailureProcessing']['sendEmailOnFailedLoginAttempt'] = \TYPO3\CMS\Backend\Security\FailedLoginAttemptNotification::class . '->sendEmailOnLoginFailures'; $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_userauth.php']['postLoginFailureProcessing']['sendEmailOnFailedLoginAttempt'] = FailedLoginAttemptNotification::class . '->sendEmailOnLoginFailures';
...@@ -2,16 +2,20 @@ ...@@ -2,16 +2,20 @@
declare(strict_types=1); declare(strict_types=1);
use OliverHader\IrreTutorial\Controller\ContentController;
use OliverHader\IrreTutorial\Controller\QueueController;
use TYPO3\CMS\Extbase\Utility\ExtensionUtility;
defined('TYPO3') or die(); defined('TYPO3') or die();
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::configurePlugin( ExtensionUtility::configurePlugin(
'IrreTutorial', 'IrreTutorial',
'Irre', 'Irre',
[ [
\OliverHader\IrreTutorial\Controller\QueueController::class => 'index', QueueController::class => 'index',
\OliverHader\IrreTutorial\Controller\ContentController::class => 'list, show, new, create, edit, update, delete' ContentController::class => 'list, show, new, create, edit, update, delete'
], ],
[ [
\OliverHader\IrreTutorial\Controller\ContentController::class => 'create, update, delete' ContentController::class => 'create, update, delete'
] ]
); );
...@@ -2,42 +2,66 @@ ...@@ -2,42 +2,66 @@
declare(strict_types=1); declare(strict_types=1);
use TYPO3\CMS\Core\Authentication\AuthenticationService;
use TYPO3\CMS\Core\Controller\FileDumpController;
use TYPO3\CMS\Core\Controller\RequireJsController;
use TYPO3\CMS\Core\Hooks\BackendUserGroupIntegrityCheck;
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\MetaTag\EdgeMetaTagManager;
use TYPO3\CMS\Core\MetaTag\Html5MetaTagManager;
use TYPO3\CMS\Core\MetaTag\MetaTagManagerRegistry;
use TYPO3\CMS\Core\Resource\Index\ExtractorRegistry;
use TYPO3\CMS\Core\Resource\OnlineMedia\Metadata\Extractor;
use TYPO3\CMS\Core\Resource\Rendering\AudioTagRenderer;
use TYPO3\CMS\Core\Resource\Rendering\RendererRegistry;
use TYPO3\CMS\Core\Resource\Rendering\VideoTagRenderer;
use TYPO3\CMS\Core\Resource\Rendering\VimeoRenderer;
use TYPO3\CMS\Core\Resource\Rendering\YouTubeRenderer;
use TYPO3\CMS\Core\Resource\Security\FileMetadataPermissionsAspect;
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\Utility\ExtensionManagementUtility;
use TYPO3\CMS\Core\Utility\GeneralUtility;
defined('TYPO3') or die(); defined('TYPO3') or die();
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS'][\TYPO3\CMS\Core\Utility\GeneralUtility::class]['moveUploadedFile'][] = \TYPO3\CMS\Core\Resource\Security\SvgHookHandler::class . '->processMoveUploadedFile'; $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS'][GeneralUtility::class]['moveUploadedFile'][] = SvgHookHandler::class . '->processMoveUploadedFile';
$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'][] = 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']['t3lib/class.t3lib_tcemain.php']['processDatamapClass'][] = BackendUserGroupIntegrityCheck::class;
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['processDatamapClass'][] = \TYPO3\CMS\Core\Hooks\BackendUserPasswordCheck::class; $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['processDatamapClass'][] = BackendUserPasswordCheck::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']['typo3/alt_doc.php']['makeEditForm_accessCheck'][] = 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_tceforms_inline.php']['checkAccess'][] = FileMetadataPermissionsAspect::class . '->isAllowedToShowEditForm';
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['checkModifyAccessList'][] = \TYPO3\CMS\Core\Resource\Security\FileMetadataPermissionsAspect::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']['processDatamapClass'][] = \TYPO3\CMS\Core\Hooks\DestroySessionHook::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'][] = \TYPO3\CMS\Core\Hooks\PagesTsConfigGuard::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'][\TYPO3\CMS\Core\Hooks\CreateSiteConfiguration::class] = \TYPO3\CMS\Core\Hooks\CreateSiteConfiguration::class; $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['processDatamapClass'][CreateSiteConfiguration::class] = CreateSiteConfiguration::class;
$GLOBALS['TYPO3_CONF_VARS']['FE']['eID_include']['dumpFile'] = \TYPO3\CMS\Core\Controller\FileDumpController::class . '::dumpAction'; $GLOBALS['TYPO3_CONF_VARS']['FE']['eID_include']['dumpFile'] = FileDumpController::class . '::dumpAction';
$GLOBALS['TYPO3_CONF_VARS']['FE']['eID_include']['requirejs'] = \TYPO3\CMS\Core\Controller\RequireJsController::class . '::retrieveConfiguration'; $GLOBALS['TYPO3_CONF_VARS']['FE']['eID_include']['requirejs'] = RequireJsController::class . '::retrieveConfiguration';
/** @var \TYPO3\CMS\Core\Resource\Rendering\RendererRegistry $rendererRegistry */ $rendererRegistry = RendererRegistry::getInstance();
$rendererRegistry = \TYPO3\CMS\Core\Resource\Rendering\RendererRegistry::getInstance(); $rendererRegistry->registerRendererClass(AudioTagRenderer::class);
$rendererRegistry->registerRendererClass(\TYPO3\CMS\Core\Resource\Rendering\AudioTagRenderer::class); $rendererRegistry->registerRendererClass(VideoTagRenderer::class);
$rendererRegistry->registerRendererClass(\TYPO3\CMS\Core\Resource\Rendering\VideoTagRenderer::class); $rendererRegistry->registerRendererClass(YouTubeRenderer::class);
$rendererRegistry->registerRendererClass(\TYPO3\CMS\Core\Resource\Rendering\YouTubeRenderer::class); $rendererRegistry->registerRendererClass(VimeoRenderer::class);
$rendererRegistry->registerRendererClass(\TYPO3\CMS\Core\Resource\Rendering\VimeoRenderer::class);
unset($rendererRegistry); unset($rendererRegistry);
$textExtractorRegistry = \TYPO3\CMS\Core\Resource\TextExtraction\TextExtractorRegistry::getInstance(); $textExtractorRegistry = TextExtractorRegistry::getInstance();
$textExtractorRegistry->registerTextExtractor(\TYPO3\CMS\Core\Resource\TextExtraction\PlainTextExtractor::class); $textExtractorRegistry->registerTextExtractor(PlainTextExtractor::class);
unset($textExtractorRegistry); unset($textExtractorRegistry);
$extractorRegistry = \TYPO3\CMS\Core\Resource\Index\ExtractorRegistry::getInstance(); $extractorRegistry = ExtractorRegistry::getInstance();
$extractorRegistry->registerExtractionService(\TYPO3\CMS\Core\Resource\OnlineMedia\Metadata\Extractor::class); $extractorRegistry->registerExtractionService(Extractor::class);
unset($extractorRegistry); unset($extractorRegistry);
// Register base authentication service // Register base authentication service
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addService( ExtensionManagementUtility::addService(
'core', 'core',
'auth', 'auth',
\TYPO3\CMS\Core\Authentication\AuthenticationService::class, AuthenticationService::class,
[ [
'title' => 'User authentication', 'title' => 'User authentication',
'description' => 'Authentication with username/password.', 'description' => 'Authentication with username/password.',
...@@ -52,23 +76,23 @@ unset($extractorRegistry); ...@@ -52,23 +76,23 @@ unset($extractorRegistry);
); );
// add default notification options to every page // add default notification options to every page
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addPageTSConfig( ExtensionManagementUtility::addPageTSConfig(
'TCEMAIN.translateToMessage = Translate to %s:' 'TCEMAIN.translateToMessage = Translate to %s:'
); );
$metaTagManagerRegistry = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\TYPO3\CMS\Core\MetaTag\MetaTagManagerRegistry::class); $metaTagManagerRegistry = GeneralUtility::makeInstance(MetaTagManagerRegistry::class);
$metaTagManagerRegistry->registerManager( $metaTagManagerRegistry->registerManager(
'html5', 'html5',
\TYPO3\CMS\Core\MetaTag\Html5MetaTagManager::class Html5MetaTagManager::class
); );
$metaTagManagerRegistry->registerManager( $metaTagManagerRegistry->registerManager(
'edge', 'edge',
\TYPO3\CMS\Core\MetaTag\EdgeMetaTagManager::class EdgeMetaTagManager::class
); );
unset($metaTagManagerRegistry); unset($metaTagManagerRegistry);
// Add module configuration // Add module configuration
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTypoScriptSetup( ExtensionManagementUtility::addTypoScriptSetup(
'config.pageTitleProviders.record.provider = TYPO3\CMS\Core\PageTitle\RecordPageTitleProvider' 'config.pageTitleProviders.record.provider = TYPO3\CMS\Core\PageTitle\RecordPageTitleProvider'
); );
......
...@@ -2,12 +2,15 @@ ...@@ -2,12 +2,15 @@
declare(strict_types=1); declare(strict_types=1);
use TYPO3\CMS\Core\Cache\Backend\FileBackend;
use TYPO3\CMS\Core\Cache\Frontend\VariableFrontend;
defined('TYPO3') or die(); defined('TYPO3') or die();
if (!is_array($GLOBALS['TYPO3_CONF_VARS']['SYS']['caching']['cacheConfigurations']['dashboard_rss'] ?? null)) { if (!is_array($GLOBALS['TYPO3_CONF_VARS']['SYS']['caching']['cacheConfigurations']['dashboard_rss'] ?? null)) {
$GLOBALS['TYPO3_CONF_VARS']['SYS']['caching']['cacheConfigurations']['dashboard_rss'] = [ $GLOBALS['TYPO3_CONF_VARS']['SYS']['caching']['cacheConfigurations']['dashboard_rss'] = [
'frontend' => \TYPO3\CMS\Core\Cache\Frontend\VariableFrontend::class, 'frontend' => VariableFrontend::class,
'backend' => \TYPO3\CMS\Core\Cache\Backend\FileBackend::class, 'backend' => FileBackend::class,
'options' => [ 'options' => [
'defaultLifetime' => 900, 'defaultLifetime' => 900,
], ],
......
...@@ -2,21 +2,25 @@ ...@@ -2,21 +2,25 @@
declare(strict_types=1); declare(strict_types=1);
use ExtbaseTeam\BlogExample\Controller\BlogController;
use ExtbaseTeam\BlogExample\Controller\ContentController;
use TYPO3\CMS\Extbase\Utility\ExtensionUtility;
defined('TYPO3') or die(); defined('TYPO3') or die();
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::configurePlugin( ExtensionUtility::configurePlugin(
'BlogExample', 'BlogExample',
'Blogs', 'Blogs',
[ [
\ExtbaseTeam\BlogExample\Controller\BlogController::class => 'list,testForm,testForward,testForwardTarget,testRelatedObject', BlogController::class => 'list,testForm,testForward,testForwardTarget,testRelatedObject',
], ],
[] []
); );
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::configurePlugin( ExtensionUtility::configurePlugin(
'BlogExample', 'BlogExample',
'Content', 'Content',
[ [
\ExtbaseTeam\BlogExample\Controller\ContentController::class => 'list', ContentController::class => 'list',
], ],
[] []
); );
...@@ -2,10 +2,15 @@ ...@@ -2,10 +2,15 @@
declare(strict_types=1); declare(strict_types=1);
use ExtbaseTeam\A\Domain\Model\A;
use ExtbaseTeam\B\Domain\Model\B;
use TYPO3\CMS\Core\Utility\GeneralUtility;
use TYPO3\CMS\Extbase\Object\Container\Container;
defined('TYPO3') or die(); defined('TYPO3') or die();
\TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\TYPO3\CMS\Extbase\Object\Container\Container::class) GeneralUtility::makeInstance(Container::class)
->registerImplementation( ->registerImplementation(
\ExtbaseTeam\A\Domain\Model\A::class, A::class,
\ExtbaseTeam\B\Domain\Model\B::class B::class
); );
...@@ -2,22 +2,38 @@ ...@@ -2,22 +2,38 @@
declare(strict_types=1); declare(strict_types=1);
use TYPO3\CMS\Extbase\Hook\DataHandler\CheckFlexFormValue;
use TYPO3\CMS\Extbase\Property\TypeConverter\ArrayConverter;
use TYPO3\CMS\Extbase\Property\TypeConverter\BooleanConverter;
use TYPO3\CMS\Extbase\Property\TypeConverter\CoreTypeConverter;
use TYPO3\CMS\Extbase\Property\TypeConverter\DateTimeConverter;
use TYPO3\CMS\Extbase\Property\TypeConverter\FileConverter;
use TYPO3\CMS\Extbase\Property\TypeConverter\FileReferenceConverter;
use TYPO3\CMS\Extbase\Property\TypeConverter\FloatConverter;
use TYPO3\CMS\Extbase\Property\TypeConverter\FolderConverter;
use TYPO3\CMS\Extbase\Property\TypeConverter\IntegerConverter;
use TYPO3\CMS\Extbase\Property\TypeConverter\ObjectConverter;
use TYPO3\CMS\Extbase\Property\TypeConverter\ObjectStorageConverter;
use TYPO3\CMS\Extbase\Property\TypeConverter\PersistentObjectConverter;
use TYPO3\CMS\Extbase\Property\TypeConverter\StringConverter;
use TYPO3\CMS\Extbase\Utility\ExtensionUtility;
defined('TYPO3') or die(); defined('TYPO3') or die();
// Register type converters // Register type converters
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerTypeConverter(\TYPO3\CMS\Extbase\Property\TypeConverter\ArrayConverter::class); ExtensionUtility::registerTypeConverter(ArrayConverter::class);
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerTypeConverter(\TYPO3\CMS\Extbase\Property\TypeConverter\BooleanConverter::class); ExtensionUtility::registerTypeConverter(BooleanConverter::class);
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerTypeConverter(\TYPO3\CMS\Extbase\Property\TypeConverter\DateTimeConverter::class); ExtensionUtility::registerTypeConverter(DateTimeConverter::class);
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerTypeConverter(\TYPO3\CMS\Extbase\Property\TypeConverter\FloatConverter::class); ExtensionUtility::registerTypeConverter(FloatConverter::class);
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerTypeConverter(\TYPO3\CMS\Extbase\Property\TypeConverter\IntegerConverter::class); ExtensionUtility::registerTypeConverter(IntegerConverter::class);
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerTypeConverter(\TYPO3\CMS\Extbase\Property\TypeConverter\ObjectStorageConverter::class); ExtensionUtility::registerTypeConverter(ObjectStorageConverter::class);
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerTypeConverter(\TYPO3\CMS\Extbase\Property\TypeConverter\PersistentObjectConverter::class); ExtensionUtility::registerTypeConverter(PersistentObjectConverter::class);
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerTypeConverter(\TYPO3\CMS\Extbase\Property\TypeConverter\ObjectConverter::class); ExtensionUtility::registerTypeConverter(ObjectConverter::class);
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerTypeConverter(\TYPO3\CMS\Extbase\Property\TypeConverter\StringConverter::class); ExtensionUtility::registerTypeConverter(StringConverter::class);
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerTypeConverter(\TYPO3\CMS\Extbase\Property\TypeConverter\CoreTypeConverter::class); ExtensionUtility::registerTypeConverter(CoreTypeConverter::class);
// Experimental FAL<->extbase converters // Experimental FAL<->extbase converters
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerTypeConverter(\TYPO3\CMS\Extbase\Property\TypeConverter\FileConverter::class); ExtensionUtility::registerTypeConverter(FileConverter::class);
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerTypeConverter(\TYPO3\CMS\Extbase\Property\TypeConverter\FileReferenceConverter::class); ExtensionUtility::registerTypeConverter(FileReferenceConverter::class);
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerTypeConverter(\TYPO3\CMS\Extbase\Property\TypeConverter\FolderConverter::class); ExtensionUtility::registerTypeConverter(FolderConverter::class);
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['checkFlexFormValue'][] = \TYPO3\CMS\Extbase\Hook\DataHandler\CheckFlexFormValue::class; $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['checkFlexFormValue'][] = CheckFlexFormValue::class;
...@@ -2,13 +2,19 @@ ...@@ -2,13 +2,19 @@
declare(strict_types=1); declare(strict_types=1);
use TYPO3\CMS\Core\Configuration\ExtensionConfiguration;
use TYPO3\CMS\Core\Utility\GeneralUtility;
use TYPO3\CMS\Extensionmanager\Report\ExtensionComposerStatus;
use TYPO3\CMS\Extensionmanager\Report\ExtensionStatus;
use TYPO3\CMS\Extensionmanager\Task\UpdateExtensionListTask;
defined('TYPO3') or die(); defined('TYPO3') or die();
// Register extension list update task // Register extension list update task
if (!(bool)\TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance( if (!(bool)GeneralUtility::makeInstance(
\TYPO3\CMS\Core\Configuration\ExtensionConfiguration::class ExtensionConfiguration::class