Feature: #89733 - New PSR-14 events for existing Signal Slots in Core Extension
See forge#89733
Description
PSR-14 EventDispatching allows for TYPO3 Extensions or PHP packages to extend TYPO3 Core functionality in an exchangeable way.
The following new PSR-14 events have been introduced:
\TYPO3\CMS\ Backend\ Authentication\ Event\ Switch User Event \TYPO3\CMS\ Backend\ Backend\ Event\ System Information Toolbar Collector Event \TYPO3\CMS\ Backend\ Controller\ Event\ Before Form Engine Page Initialized Event \TYPO3\CMS\ Backend\ Controller\ Event\ After Form Engine Page Initialized Event \TYPO3\CMS\ Backend\ Login Provider\ Event\ Modify Page Layout On Login Provider Selection Event \TYPO3\CMS\ Core\ Imaging\ Event\ Modify Icon For Resource Properties Event \TYPO3\CMS\ Core\ Data Handling\ Event\ Is Table Excluded From Reference Index Event \TYPO3\CMS\ Core\ Data Handling\ Event\ Append Link Handler Elements Event \TYPO3\CMS\ Core\ Configuration\ Event\ After Tca Compilation Event \TYPO3\CMS\ Core\ Database\ Event\ Alter Table Definition Statements Event \TYPO3\CMS\ Core\ Tree\ Event\ Modify Tree Data Event \TYPO3\CMS\ Core\ Configuration\ Event\ Modify Loaded Page Ts Config Event \TYPO3\CMS\ Impexp\ Event\ Before Import Event \TYPO3\CMS\ Install\ Service\ Event\ Modify Language Pack Remote Base Url Event \TYPO3\CMS\ Linkvalidator\ Event\ Before Record Is Analyzed Event \TYPO3\CMS\ Seo\ Event\ Modify Url For Canonical Tag Event \TYPO3\CMS\ Workspaces\ Event\ After Compiled Cacheable Data For Workspace Event \TYPO3\CMS\ Workspaces\ Event\ After Data Generated For Workspace Event \TYPO3\CMS\ Workspaces\ Event\ Get Versioned Data Event \TYPO3\CMS\ Workspaces\ Event\ Sort Versioned Data Event
They replace the existing Extbase-based Signal Slots
\TYPO3\CMS\ Backend\ Backend\ Toolbar Items\ System Information Toolbar Item:: get System Information \TYPO3\CMS\ Backend\ Backend\ Toolbar Items\ System Information Toolbar Item:: load Messages \TYPO3\CMS\ Backend\ Login Provider\ Username Password Login Provider:: get Page Renderer \TYPO3\CMS\ Backend\ Controller\ Edit Document Controller:: pre Init After \TYPO3\CMS\ Backend\ Controller\ Edit Document Controller:: init After \TYPO3\CMS\ Backend\ Utility\ Backend Utility:: get Pages TSconfig Pre Include \TYPO3\CMS\ Beuser\ Controller\ Backend User Controller:: switch User \TYPO3\CMS\ Core\ Database\ Soft Reference Index:: set Typo Link Parts Element \TYPO3\CMS\ Core\ Database\ Reference Index:: should Exclude Table From Reference Index \TYPO3\CMS\ Core\ Imaging\ Icon Factory:: build Icon For Resource Signal \TYPO3\CMS\ Core\ Tree\ Table Configuration\ Database Tree Data Provider:: Post Process Tree Data \TYPO3\CMS\ Core\ Utility\ Extension Management Utility:: tca Is Being Built \TYPO3\CMS\ Impexp\ Utility\ Import Export Utility:: after Import Export Initialisation \TYPO3\CMS\ Install\ Service\ Sql Expected Schema Service:: tables Definition Is Being Built \TYPO3\CMS\ Lang\ Service\ Translation Service:: post Process Mirror Url \TYPO3\CMS\ Linkvalidator\ Link Analyzer:: before Analyze Record \TYPO3\CMS\ Seo\ Canonical\ Canonical Generator:: before Generating Canonical \TYPO3\CMS\ Workspaces\ Service\ Grid Data Service:: SIGNAL_ Generate Data Array_ Before Caching \TYPO3\CMS\ Workspaces\ Service\ Grid Data Service:: SIGNAL_ Generate Data Array_ Post Processs \TYPO3\CMS\ Workspaces\ Service\ Grid Data Service:: SIGNAL_ Get Data Array_ Post Processs \TYPO3\CMS\ Workspaces\ Service\ Grid Data Service:: SIGNAL_ Sort Data Array_ Post Processs
Impact
It is now possible to add listeners to the new PSR-14 Events which define a clear API what can be read or modified.
The listeners can be added to the Configuration/Services.yaml as
it is done in TYPO3's shipped extensions as well.