TYPO3 CMS  TYPO3_6-2
TYPO3\CMS\Fluid\ViewHelpers\SwitchViewHelper Class Reference
Inheritance diagram for TYPO3\CMS\Fluid\ViewHelpers\SwitchViewHelper:
TYPO3\CMS\Fluid\Core\ViewHelper\AbstractViewHelper TYPO3\CMS\Fluid\Core\ViewHelper\Facets\ChildNodeAccessInterface

Public Member Functions

 setChildNodes (array $childNodes)
 
 render ($expression)
 
- Public Member Functions inherited from TYPO3\CMS\Fluid\Core\ViewHelper\AbstractViewHelper
 setArguments (array $arguments)
 
 setRenderingContext (\TYPO3\CMS\Fluid\Core\Rendering\RenderingContextInterface $renderingContext)
 
 injectReflectionService (\TYPO3\CMS\Extbase\Reflection\ReflectionService $reflectionService)
 
 isEscapingInterceptorEnabled ()
 
 setViewHelperNode (\TYPO3\CMS\Fluid\Core\Parser\SyntaxTree\ViewHelperNode $node)
 
 setRenderChildrenClosure (\Closure $renderChildrenClosure)
 
 initializeArgumentsAndRender ()
 
 initialize ()
 
 renderChildren ()
 
 prepareArguments ()
 
 validateArguments ()
 
 initializeArguments ()
 
 compile ($argumentsVariableName, $renderChildrenClosureVariableName, &$initializationPhpCode, \TYPO3\CMS\Fluid\Core\Parser\SyntaxTree\AbstractNode $syntaxTreeNode, \TYPO3\CMS\Fluid\Core\Compiler\TemplateCompiler $templateCompiler)
 
 resetState ()
 

Protected Member Functions

 backupSwitchState ()
 
 restoreSwitchState ()
 
- Protected Member Functions inherited from TYPO3\CMS\Fluid\Core\ViewHelper\AbstractViewHelper
 registerArgument ($name, $type, $description, $required=FALSE, $defaultValue=NULL)
 
 overrideArgument ($name, $type, $description, $required=FALSE, $defaultValue=NULL)
 
 callRenderMethod ()
 
 buildRenderChildrenClosure ()
 
 hasArgument ($argumentName)
 

Protected Attributes

 $backupSwitchExpression = NULL
 
 $backupBreakState = FALSE
 
- Protected Attributes inherited from TYPO3\CMS\Fluid\Core\ViewHelper\AbstractViewHelper
 $arguments
 
 $templateVariableContainer
 
 $controllerContext
 
 $renderingContext
 
 $renderChildrenClosure = NULL
 
 $viewHelperVariableContainer
 
 $objectManager
 
 $escapingInterceptorEnabled = TRUE
 

Private Attributes

 $childNodes = array()
 

Additional Inherited Members

- Static Public Member Functions inherited from TYPO3\CMS\Fluid\Core\ViewHelper\AbstractViewHelper
static renderStatic (array $arguments, \Closure $renderChildrenClosure, \TYPO3\CMS\Fluid\Core\Rendering\RenderingContextInterface $renderingContext)
 

Detailed Description

Switch view helper which can be used to render content depending on a value or expression. Implements what a basic switch()-PHP-method does.

= Examples =

<f:switch expression="{person.gender}"> <f:case value="male">Mr.</f:case> <f:case value="female">Mrs.</f:case> <f:case default="TRUE">Mrs. or Mr.</f:case> </f:switch> <output> Mr. / Mrs. (depending on the value of {person.gender}) or if no value evaluates to TRUE, default case </output>

Note: Using this view helper can be a sign of weak architecture. If you end up using it extensively you might want to consider restructuring your controllers/actions and/or use partials and sections. E.g. the above example could be achieved with <f:render partial="title.{person.gender}" /> and the partials "title.male.html", "title.female.html", ... Depending on the scenario this can be easier to extend and possibly contains less duplication.

Definition at line 39 of file SwitchViewHelper.php.

Member Function Documentation

◆ backupSwitchState()

TYPO3\CMS\Fluid\ViewHelpers\SwitchViewHelper::backupSwitchState ( )
protected

Backups "switch expression" and "break" state of a possible parent switch ViewHelper to support nesting

Returns
void

Definition at line 105 of file SwitchViewHelper.php.

Referenced by TYPO3\CMS\Fluid\ViewHelpers\SwitchViewHelper\render().

◆ render()

TYPO3\CMS\Fluid\ViewHelpers\SwitchViewHelper::render (   $expression)

◆ restoreSwitchState()

TYPO3\CMS\Fluid\ViewHelpers\SwitchViewHelper::restoreSwitchState ( )
protected

Restores "switch expression" and "break" states that might have been backed up in backupSwitchState() before

Returns
void

Definition at line 119 of file SwitchViewHelper.php.

Referenced by TYPO3\CMS\Fluid\ViewHelpers\SwitchViewHelper\render().

◆ setChildNodes()

TYPO3\CMS\Fluid\ViewHelpers\SwitchViewHelper::setChildNodes ( array  $childNodes)

Setter for ChildNodes - as defined in ChildNodeAccessInterface

Parameters
array$childNodesChild nodes of this syntax tree node
Returns
void

Implements TYPO3\CMS\Fluid\Core\ViewHelper\Facets\ChildNodeAccessInterface.

Definition at line 63 of file SwitchViewHelper.php.

References TYPO3\CMS\Fluid\ViewHelpers\SwitchViewHelper\$childNodes.

Member Data Documentation

◆ $backupBreakState

TYPO3\CMS\Fluid\ViewHelpers\SwitchViewHelper::$backupBreakState = FALSE
protected

Definition at line 55 of file SwitchViewHelper.php.

◆ $backupSwitchExpression

TYPO3\CMS\Fluid\ViewHelpers\SwitchViewHelper::$backupSwitchExpression = NULL
protected

Definition at line 50 of file SwitchViewHelper.php.

◆ $childNodes

TYPO3\CMS\Fluid\ViewHelpers\SwitchViewHelper::$childNodes = array()
private