‪TYPO3CMS  ‪main
TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher Class Reference
Inheritance diagram for TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher:
TYPO3\CMS\Form\Domain\Finishers\FinisherInterface TYPO3\CMS\Form\Domain\Finishers\ClosureFinisher TYPO3\CMS\Form\Domain\Finishers\ConfirmationFinisher TYPO3\CMS\Form\Domain\Finishers\DeleteUploadsFinisher TYPO3\CMS\Form\Domain\Finishers\EmailFinisher TYPO3\CMS\Form\Domain\Finishers\FlashMessageFinisher TYPO3\CMS\Form\Domain\Finishers\RedirectFinisher TYPO3\CMS\Form\Domain\Finishers\SaveToDatabaseFinisher TYPO3\CMS\Form\Tests\Unit\Domain\Finishers\Fixtures\AbstractFinisherFixture

Public Member Functions

 setFinisherIdentifier (string $finisherIdentifier)
 
 getFinisherIdentifier ()
 
 setOptions (array $options)
 
 setOption (string $optionName, $optionValue)
 
string null execute (FinisherContext $finisherContext)
 
 isEnabled ()
 

Protected Member Functions

string void null executeInternal ()
 
string array int null parseOption (string $optionName)
 
array string translateFinisherOption ( $subject, FormRuntime $formRuntime, string $optionName, $optionValue, array $translationOptions)
 
mixed substituteRuntimeReferences ($needle, FormRuntime $formRuntime)
 
int string array resolveRuntimeReference (string $property, FormRuntime $formRuntime)
 
 getTypoScriptFrontendController ()
 

Protected Attributes

string $finisherIdentifier = ''
 
string $shortFinisherIdentifier = ''
 
array $options = array( )
 
array $defaultOptions = array( )
 
TYPO3 CMS Form Domain Finishers FinisherContext $finisherContext
 

Detailed Description

Finisher base class.

Scope: frontend This class is meant to be sub classed by developers

Definition at line 40 of file AbstractFinisher.php.

Member Function Documentation

◆ execute()

string null TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher::execute ( FinisherContext  $finisherContext)
final

Executes the finisher

Parameters
FinisherContext$finisherContext‪The Finisher context that contains the current Form Runtime and Response
Returns
‪string|null

Implements TYPO3\CMS\Form\Domain\Finishers\FinisherInterface.

Definition at line 108 of file AbstractFinisher.php.

References TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher\$finisherContext, TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher\executeInternal(), and TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher\isEnabled().

◆ executeInternal()

◆ getFinisherIdentifier()

TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher::getFinisherIdentifier ( )

◆ getTypoScriptFrontendController()

TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher::getTypoScriptFrontendController ( )
protected

Definition at line 360 of file AbstractFinisher.php.

References $GLOBALS.

Referenced by TYPO3\CMS\Form\Domain\Finishers\RedirectFinisher\redirect().

◆ isEnabled()

TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher::isEnabled ( )

◆ parseOption()

string array int null TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher::parseOption ( string  $optionName)
protected

◆ resolveRuntimeReference()

int string array TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher::resolveRuntimeReference ( string  $property,
FormRuntime  $formRuntime 
)
protected

◆ setFinisherIdentifier()

TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher::setFinisherIdentifier ( string  $finisherIdentifier)
Parameters
string$finisherIdentifier‪The identifier for this finisher

Implements TYPO3\CMS\Form\Domain\Finishers\FinisherInterface.

Definition at line 72 of file AbstractFinisher.php.

References TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher\$finisherIdentifier.

◆ setOption()

TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher::setOption ( string  $optionName,
  $optionValue 
)

Sets a single finisher option (

See also
setOptions())
Parameters
string$optionName‪name of the option to be set
mixed$optionValue‪value of the option

Implements TYPO3\CMS\Form\Domain\Finishers\FinisherInterface.

Definition at line 97 of file AbstractFinisher.php.

◆ setOptions()

TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher::setOptions ( array  $options)
Parameters
array$options‪configuration options in the format ['option1' => 'value1', 'option2' => 'value2', ...]

Implements TYPO3\CMS\Form\Domain\Finishers\FinisherInterface.

Definition at line 86 of file AbstractFinisher.php.

References TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher\$options.

◆ substituteRuntimeReferences()

mixed TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher::substituteRuntimeReferences (   $needle,
FormRuntime  $formRuntime 
)
protected

You can encapsulate an option value with {}. This enables you to access every gettable property from the TYPO3\CMS\Form\Domain\Runtime\FormRuntime.

For example: {formState.formValues.<elementIdentifier>} or {<elementIdentifier>}

Both examples are equal to "$formRuntime->getFormState()->getFormValues()[<elementIdentifier>]" There is a special option value '{__currentTimestamp}'. This will be replaced with the current timestamp.

Parameters
string | array$needle
FormRuntime$formRuntime
Returns
‪mixed

Reimplemented in TYPO3\CMS\Form\Tests\Unit\Domain\Finishers\Fixtures\AbstractFinisherFixture.

Definition at line 250 of file AbstractFinisher.php.

References TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher\resolveRuntimeReference().

Referenced by TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher\parseOption().

◆ translateFinisherOption()

array string TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher::translateFinisherOption (   $subject,
FormRuntime  $formRuntime,
string  $optionName,
  $optionValue,
array  $translationOptions 
)
protected

Wraps TranslationService::translateFinisherOption to recursively invoke all array items of resolved form state values or nested finisher option configuration settings.

Parameters
string | array$subject
FormRuntime$formRuntime
string | array$optionValue
Returns
‪array|string

Reimplemented in TYPO3\CMS\Form\Tests\Unit\Domain\Finishers\Fixtures\AbstractFinisherFixture.

Definition at line 205 of file AbstractFinisher.php.

Referenced by TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher\parseOption().

Member Data Documentation

◆ $defaultOptions

array TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher::$defaultOptions = array( )
protected

These are the default options of the finisher. Override them in your concrete implementation. Default options should not be changed from "outside"

Definition at line 63 of file AbstractFinisher.php.

◆ $finisherContext

TYPO3 CMS Form Domain Finishers FinisherContext TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher::$finisherContext
protected

◆ $finisherIdentifier

string TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher::$finisherIdentifier = ''
protected

◆ $options

array TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher::$options = array( )
protected

The options which have been set from the outside. Instead of directly accessing them, you should rather use parseOption().

Definition at line 55 of file AbstractFinisher.php.

Referenced by TYPO3\CMS\Form\Domain\Finishers\SaveToDatabaseFinisher\executeInternal(), and TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher\setOptions().

◆ $shortFinisherIdentifier

string TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher::$shortFinisherIdentifier = ''
protected

Definition at line 48 of file AbstractFinisher.php.