Feature: #107528 - PSR-14 event before renderable is removed from form
See forge#107528
Description
A new PSR-14 event
\TYPO3\
has been introduced. It serves as an improved replacement for the now
removed hook
$GLOBALS.
The new event is dispatched immediately before a renderable is deleted from the form.
The event provides the following public properties:
$renderable: The form element (read-only).$prevent: A boolean flag that can be set toRemoval trueto prevent the removal of the renderable.
The event is stoppable. As soon as
$prevent is set to
true, no further listeners are executed.
Example
An example event listener could look like this:
use TYPO3\CMS\Core\Attribute\AsEventListener;
use TYPO3\CMS\Form\Event\BeforeRenderableIsRemovedFromFormEvent;
class MyEventListener {
#[AsEventListener(
identifier: 'my-extension/before-renderable-is-removed-from-form-event',
)]
public function __invoke(BeforeRenderableIsRemovedFromFormEvent $event): void
{
$event->preventRemoval = true;
$renderable = $event->renderable;
// Custom logic before the renderable is removed
}
}
Impact
With the new
Before,
it is now possible to prevent the deletion of a renderable and to add custom
logic based on the deletion.