TYPO3  7.6
Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
FormBuilder Class Reference

Public Member Functions

 injectTypoScriptService (\TYPO3\CMS\Extbase\Service\TypoScriptService $typoScriptService)
 
 injectTypoScriptRepository (\TYPO3\CMS\Form\Domain\Repository\TypoScriptRepository $typoScriptRepository)
 
 injectSignalSlotDispatcher (\TYPO3\CMS\Extbase\SignalSlot\Dispatcher $signalSlotDispatcher)
 
 injectSessionUtility (\TYPO3\CMS\Form\Utility\SessionUtility $sessionUtility)
 
 injectElementCounter (\TYPO3\CMS\Form\Utility\ElementCounter $elementCounter)
 
 injectObjectManager (\TYPO3\CMS\Extbase\Object\ObjectManager $objectManager)
 
 __construct ()
 
 getConfiguration ()
 
 setConfiguration (Configuration $configuration)
 
 getControllerContext ()
 
 setControllerContext (ControllerContext $controllerContext)
 
 getCompatibilityService ()
 
 setCompatibilityService (CompatibilityLayerUtility $compatibilityService)
 
 getFormUtility ()
 
 setFormUtility (FormUtility $formUtility)
 
 getValidationBuilder ()
 
 setValidationBuilder (ValidationBuilder $validationBuilder)
 
 buildModel ()
 
 getFormPrefix ()
 
 getDisableContentElementRendering ()
 
 getControllerAction ()
 
 getCompatibilityMode ()
 
 getIncomingData ()
 
 setValidationErrors (\TYPO3\CMS\Extbase\Error\Result $validationErrors)
 
 getValidationErrors ()
 

Public Attributes

const COMPATIBILITY_THEME_NAME = 'Compatibility'
 

Protected Member Functions

 createElementObject ()
 
 reviveElement (Element $element, array $userConfiguredElementTypoScript, $elementType= '')
 
 setChildElementsByIntegerKey (Element $element, array $userConfiguredElementTypoScript)
 
 distinguishElementType (Element $element, array $userConfiguredElementTypoScript, $elementType= '')
 
 addChildElement (Element $element, array $userConfiguredElementTypoScript, $elementType= '')
 
 setAttributes (ElementBuilder $elementBuilder, Element $element)
 
 handleIncomingValues (Element $element, array $userConfiguredElementTypoScript)
 

Protected Attributes

 $formUtility
 
 $typoScriptService
 
 $compatibilityService
 
 $validationBuilder
 
 $typoScriptRepository
 
 $signalSlotDispatcher
 
 $sessionUtility
 
 $objectManager
 
 $elementCounter
 
 $validationErrors = null
 
 $configuration
 
 $controllerContext
 

Detailed Description

TypoScript factory for form

Takes the incoming TypoScript and adds all the necessary form objects according to the configuration.

Definition at line 32 of file FormBuilder.php.

Constructor & Destructor Documentation

__construct ( )

Creates this object.

Definition at line 168 of file FormBuilder.php.

Member Function Documentation

addChildElement ( Element  $element,
array  $userConfiguredElementTypoScript,
  $elementType = '' 
)
protected

Add child object to this element

Parameters
Element$element
array$userConfiguredElementTypoScriptThe configuration array
string$elementTypeThe element type (e.g BUTTON)
Returns
void

Definition at line 443 of file FormBuilder.php.

References Element\addChildElement(), FormBuilder\createElementObject(), and FormBuilder\reviveElement().

Referenced by FormBuilder\distinguishElementType().

buildModel ( )

Build model from TypoScript Needed if more than one form exist at a page

Returns
NULL| The form object containing the child elements

Definition at line 259 of file FormBuilder.php.

References FormBuilder\createElementObject(), FormBuilder\getControllerAction(), and FormBuilder\reviveElement().

createElementObject ( )
protected

Create a element

Returns

Definition at line 309 of file FormBuilder.php.

References GeneralUtility\makeInstance().

Referenced by FormBuilder\addChildElement(), and FormBuilder\buildModel().

distinguishElementType ( Element  $element,
array  $userConfiguredElementTypoScript,
  $elementType = '' 
)
protected

Create and add element by type. If its not a registered form element try to render it as contentelement with the internal elementType CONTENTELEMENT

Parameters
Element$element
array$userConfiguredElementTypoScriptThe configuration array
string$elementTypeThe element type (e.g BUTTON)
Returns
void

Definition at line 422 of file FormBuilder.php.

References FormBuilder\addChildElement(), and elseif.

Referenced by FormBuilder\setChildElementsByIntegerKey().

getCompatibilityMode ( )

If TRUE form try to respect the layout settings

Returns
bool

Definition at line 643 of file FormBuilder.php.

getCompatibilityService ( )
Returns
CompatibilityLayerUtility

Definition at line 208 of file FormBuilder.php.

References FormBuilder\$compatibilityService.

getConfiguration ( )
Returns
Configuration

Definition at line 176 of file FormBuilder.php.

References FormBuilder\$configuration.

getControllerAction ( )

TRUE if the content element rendering should be disabled.

Returns
string

Definition at line 633 of file FormBuilder.php.

Referenced by FormBuilder\buildModel(), and FormBuilder\setAttributes().

getControllerContext ( )
Returns
ControllerContext

Definition at line 192 of file FormBuilder.php.

References FormBuilder\$controllerContext.

getDisableContentElementRendering ( )

TRUE if the content element rendering should be disabled.

Returns
boolean

Definition at line 623 of file FormBuilder.php.

getFormPrefix ( )

Return the form prefix

Returns
string

Definition at line 613 of file FormBuilder.php.

getFormUtility ( )
Returns
FormUtility

Definition at line 224 of file FormBuilder.php.

References FormBuilder\$formUtility.

getIncomingData ( )

Get the incoming flat form data

Returns
ValidationElement

Definition at line 653 of file FormBuilder.php.

Referenced by HandleIncomingFormValues\handleIncomingFormValues(), and FormBuilder\handleIncomingValues().

getValidationBuilder ( )
Returns
ValidationBuilder

Definition at line 240 of file FormBuilder.php.

References FormBuilder\$validationBuilder.

getValidationErrors ( )

Get the validation errors

Returns
NULL|

Definition at line 674 of file FormBuilder.php.

References FormBuilder\$validationErrors.

Referenced by HandleIncomingFormValues\handleIncomingFormValues().

handleIncomingValues ( Element  $element,
array  $userConfiguredElementTypoScript 
)
protected

Handles the incoming form data

Parameters
Element$element
array$userConfiguredElementTypoScript
Returns
array

Definition at line 518 of file FormBuilder.php.

References Element\getAdditionalArgument(), Element\getHtmlAttribute(), FormBuilder\getIncomingData(), Element\getName(), Element\setAdditionalArgument(), Element\setHtmlAttribute(), and TemplateService\sortedKeyList().

Referenced by FormBuilder\setAttributes().

injectElementCounter ( \TYPO3\CMS\Form\Utility\ElementCounter  $elementCounter)
Parameters
\TYPO3\CMS\Form\Utility\ElementCounter$elementCounter
Returns
void

Definition at line 151 of file FormBuilder.php.

References FormBuilder\$elementCounter.

injectObjectManager ( \TYPO3\CMS\Extbase\Object\ObjectManager  $objectManager)
Parameters
\TYPO3\CMS\Extbase\Object\ObjectManager$objectManager
Returns
void

Definition at line 160 of file FormBuilder.php.

References FormBuilder\$objectManager.

injectSessionUtility ( \TYPO3\CMS\Form\Utility\SessionUtility  $sessionUtility)
Parameters
\TYPO3\CMS\Form\Utility\SessionUtility$sessionUtility
Returns
void

Definition at line 142 of file FormBuilder.php.

References FormBuilder\$sessionUtility.

injectSignalSlotDispatcher ( \TYPO3\CMS\Extbase\SignalSlot\Dispatcher  $signalSlotDispatcher)
Parameters
\TYPO3\CMS\Extbase\SignalSlot\Dispatcher$signalSlotDispatcher
Returns
void

Definition at line 133 of file FormBuilder.php.

References FormBuilder\$signalSlotDispatcher.

injectTypoScriptRepository ( \TYPO3\CMS\Form\Domain\Repository\TypoScriptRepository  $typoScriptRepository)
Parameters
\TYPO3\CMS\Form\Domain\Repository\TypoScriptRepository$typoScriptRepository
Returns
void

Definition at line 124 of file FormBuilder.php.

References FormBuilder\$typoScriptRepository.

injectTypoScriptService ( \TYPO3\CMS\Extbase\Service\TypoScriptService  $typoScriptService)
Parameters
\TYPO3\CMS\Extbase\Service\TypoScriptService$typoScriptService
Returns
void

Definition at line 115 of file FormBuilder.php.

References FormBuilder\$typoScriptService.

reviveElement ( Element  $element,
array  $userConfiguredElementTypoScript,
  $elementType = '' 
)
protected

Revive the domain model of the accordant element.

Parameters
Element$element
array$userConfiguredElementTypoScriptThe configuration array
string$elementTypeThe element type (e.g BUTTON)
Returns
void

Definition at line 323 of file FormBuilder.php.

References GeneralUtility\deprecationLog(), Element\getElementType(), Element\setAdditionalArguments(), FormBuilder\setAttributes(), FormBuilder\setChildElementsByIntegerKey(), Element\setElementCounter(), and Element\setElementType().

Referenced by FormBuilder\addChildElement(), and FormBuilder\buildModel().

setAttributes ( ElementBuilder  $elementBuilder,
Element  $element 
)
protected
setChildElementsByIntegerKey ( Element  $element,
array  $userConfiguredElementTypoScript 
)
protected

Rendering of a "numerical array" of Form objects from TypoScript Creates new object for each element found

Parameters
Element$element
array$userConfiguredElementTypoScriptThe configuration array
Returns
void
Exceptions
\InvalidArgumentException

Definition at line 388 of file FormBuilder.php.

References FormBuilder\distinguishElementType(), Element\getElementCounter(), and TemplateService\sortedKeyList().

Referenced by FormBuilder\reviveElement().

setCompatibilityService ( CompatibilityLayerUtility  $compatibilityService)
Parameters
CompatibilityLayerUtility$compatibilityService

Definition at line 216 of file FormBuilder.php.

References FormBuilder\$compatibilityService.

setConfiguration ( Configuration  $configuration)
Parameters
Configuration$configuration

Definition at line 184 of file FormBuilder.php.

References FormBuilder\$configuration.

setControllerContext ( ControllerContext  $controllerContext)
Parameters
ControllerContext$controllerContext

Definition at line 200 of file FormBuilder.php.

References FormBuilder\$controllerContext.

setFormUtility ( FormUtility  $formUtility)
Parameters
FormUtility$formUtility

Definition at line 232 of file FormBuilder.php.

References FormBuilder\$formUtility.

setValidationBuilder ( ValidationBuilder  $validationBuilder)
Parameters
ValidationBuilder$validationBuilder

Definition at line 248 of file FormBuilder.php.

References FormBuilder\$validationBuilder.

setValidationErrors ( \TYPO3\CMS\Extbase\Error\Result  $validationErrors)

Set the validation errors

Parameters
\TYPO3\CMS\Extbase\Error\Result$validationErrors
Returns
void

Definition at line 664 of file FormBuilder.php.

References FormBuilder\$validationErrors.

Member Data Documentation

$compatibilityService
protected
$configuration
protected

Definition at line 104 of file FormBuilder.php.

Referenced by FormBuilder\getConfiguration(), and FormBuilder\setConfiguration().

$controllerContext
protected
$elementCounter
protected

Definition at line 94 of file FormBuilder.php.

Referenced by FormBuilder\injectElementCounter().

$formUtility
protected

Definition at line 54 of file FormBuilder.php.

Referenced by FormBuilder\getFormUtility(), and FormBuilder\setFormUtility().

$objectManager
protected

Definition at line 89 of file FormBuilder.php.

Referenced by FormBuilder\injectObjectManager().

$sessionUtility
protected

Definition at line 84 of file FormBuilder.php.

Referenced by FormBuilder\injectSessionUtility().

$signalSlotDispatcher
protected

Definition at line 79 of file FormBuilder.php.

Referenced by FormBuilder\injectSignalSlotDispatcher().

$typoScriptRepository
protected

Definition at line 74 of file FormBuilder.php.

Referenced by FormBuilder\injectTypoScriptRepository().

$typoScriptService
protected

Definition at line 59 of file FormBuilder.php.

Referenced by FormBuilder\injectTypoScriptService().

$validationBuilder
protected
$validationErrors = null
protected
const COMPATIBILITY_THEME_NAME = 'Compatibility'

Definition at line 37 of file FormBuilder.php.