TYPO3  7.6
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
AbstractViewHelper Class Reference
Inheritance diagram for AbstractViewHelper:
AvatarViewHelper FormatDetailsViewHelper HistoryEntryViewHelper IsExtensionLoadedViewHelper UsernameViewHelper WorkspaceTitleViewHelper ArrayElementViewHelper PagesViewHelper SysFileMountsViewHelper SysLanguageViewHelper EditRecordViewHelper IssueCommandViewHelper PermissionsViewHelper RemoveUserViewHelper SwitchUserViewHelper IconViewHelper FormatsViewHelper ImplodeViewHelper JsonEncodeViewHelper InstallationStateCssClassViewHelper TimeSinceLastUpdateViewHelper Typo3DependencyViewHelper DeleteFileViewHelper EditFileContentViewHelper EditSysFileMetadataRecordViewHelper RenameFileViewHelper ReplaceFileViewHelper AbstractConditionViewHelper AbstractTagBasedViewHelper AbstractWidgetViewHelper TestViewHelper TestViewHelper2 ChildNodeAccessFacetViewHelper PostParseFacetViewHelper AliasViewHelper BaseViewHelper AbstractBackendViewHelper InfoboxViewHelper PageRendererViewHelper CaseViewHelper CObjectViewHelper CommentViewHelper CountViewHelper CycleViewHelper DebugViewHelper ElseViewHelper ValidationResultsViewHelper AbstractEncodingViewHelper BytesViewHelper CaseViewHelper CdataViewHelper CropViewHelper CurrencyViewHelper DateViewHelper HtmlViewHelper Nl2brViewHelper NumberViewHelper PaddingViewHelper PrintfViewHelper RawViewHelper StripTagsViewHelper UrlencodeViewHelper ForViewHelper GroupedForViewHelper LayoutViewHelper TypolinkViewHelper RenderChildrenViewHelper RenderViewHelper SectionViewHelper SpacelessViewHelper SwitchViewHelper ThenViewHelper TranslateViewHelper ActionViewHelper EmailViewHelper ExternalViewHelper ImageViewHelper PageViewHelper ResourceViewHelper TypolinkViewHelper UriViewHelper ClickEnlargeViewHelper CategoriesViewHelper DirectoryViewHelper KeywordsViewHelper ListViewHelper SectionViewHelper UpdatedViewHelper AggregateSelectOptionsViewHelper PlainMailViewHelper DateTimeViewHelper FlagValueViewHelper GroupListViewHelper PageBrowsingResultsViewHelper PageBrowsingViewHelper ConstantViewHelper ExistsViewHelper ImageDimensionViewHelper RelativePathViewHelper SizeViewHelper CropViewHelper ImageMagickCommandsViewHelper PhpErrorCodeViewHelper ArrayValueByKeyViewHelper PhpInfoViewHelper ModuleLinkViewHelper DeleteLinkViewHelper EditLinkViewHelper

Public Member Functions

 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 ()
 

Static Public Member Functions

static renderStatic (array $arguments,\Closure $renderChildrenClosure,\TYPO3\CMS\Fluid\Core\Rendering\RenderingContextInterface $renderingContext)
 

Protected Member Functions

 registerArgument ($name, $type, $description, $required=false, $defaultValue=null)
 
 overrideArgument ($name, $type, $description, $required=false, $defaultValue=null)
 
 callRenderMethod ()
 
 getLogger ()
 
 buildRenderChildrenClosure ()
 
 hasArgument ($argumentName)
 

Protected Attributes

 $arguments
 
 $templateVariableContainer
 
 $controllerContext
 
 $renderingContext
 
 $renderChildrenClosure = null
 
 $viewHelperVariableContainer
 
 $objectManager
 
 $escapingInterceptorEnabled = true
 

Private Member Functions

 registerRenderMethodArguments ()
 

Private Attributes

 $argumentsInitialized = false
 
 $argumentDefinitions = array()
 
 $viewHelperNode
 
 $reflectionService
 

Static Private Attributes

static $argumentDefinitionCache = array()
 

Detailed Description

The abstract base class for all view helpers.

Definition at line 22 of file AbstractViewHelper.php.

Member Function Documentation

buildRenderChildrenClosure ( )
protected

Helper which is mostly needed when calling renderStatic() from within render().

No public API yet.

Returns

Definition at line 316 of file AbstractViewHelper.php.

Referenced by DateTimeViewHelper\render(), GroupListViewHelper\render(), ThenViewHelper\render(), FlagValueViewHelper\render(), EditLinkViewHelper\render(), SysLanguageViewHelper\render(), SysFileMountsViewHelper\render(), PagesViewHelper\render(), ImageMagickCommandsViewHelper\render(), ConstantViewHelper\render(), IsExtensionLoadedViewHelper\render(), PagePathViewHelper\render(), ArrayElementViewHelper\render(), TimeSinceLastUpdateViewHelper\render(), ImplodeViewHelper\render(), DeleteFileViewHelper\render(), DeleteLinkViewHelper\render(), AvatarViewHelper\render(), ModuleLinkViewHelper\render(), PageBrowsingResultsViewHelper\render(), ErrorIconViewHelper\render(), CaseViewHelper\render(), RenameFileViewHelper\render(), ReplaceFileViewHelper\render(), EditFileContentViewHelper\render(), EditRecordViewHelper\render(), EditSysFileMetadataRecordViewHelper\render(), SwitchUserViewHelper\render(), Typo3DependencyViewHelper\render(), InstallationStateCssClassViewHelper\render(), SpriteIconForRecordViewHelper\render(), IssueCommandViewHelper\render(), FormatsViewHelper\render(), IconViewHelper\render(), WorkspaceTitleViewHelper\render(), UsernameViewHelper\render(), PhpInfoViewHelper\render(), FormatDetailsViewHelper\render(), HistoryEntryViewHelper\render(), EmailViewHelper\render(), RemoveUserViewHelper\render(), RelativePathViewHelper\render(), PermissionsViewHelper\render(), ImageDimensionViewHelper\render(), ElseViewHelper\render(), ExistsViewHelper\render(), ResourceViewHelper\render(), SizeViewHelper\render(), JsonEncodeViewHelper\render(), ArrayValueByKeyViewHelper\render(), BaseViewHelper\render(), PageBrowsingViewHelper\render(), ExternalViewHelper\render(), Nl2brViewHelper\render(), PageInfoViewHelper\render(), NumberViewHelper\render(), DebugViewHelper\render(), PhpErrorCodeViewHelper\render(), CountViewHelper\render(), AliasViewHelper\render(), UrlencodeViewHelper\render(), PaddingViewHelper\render(), HtmlentitiesDecodeViewHelper\render(), StripTagsViewHelper\render(), ClickEnlargeViewHelper\render(), CurrencyViewHelper\render(), BytesViewHelper\render(), CdataViewHelper\render(), CshViewHelper\render(), RawViewHelper\render(), PageViewHelper\render(), PrintfViewHelper\render(), ShortcutViewHelper\render(), TypolinkViewHelper\render(), InfoboxViewHelper\render(), ForViewHelper\render(), HtmlViewHelper\render(), SwitchViewHelper\render(), CropViewHelper\render(), ImageViewHelper\render(), TranslateViewHelper\render(), RenderViewHelper\render(), and DateViewHelper\render().

callRenderMethod ( )
protected

Call the render() method and handle errors.

Returns
string the rendered ViewHelper
Exceptions
Exception

Definition at line 251 of file AbstractViewHelper.php.

References GeneralUtility\getApplicationContext(), and AbstractViewHelper\getLogger().

Referenced by AbstractWidgetViewHelper\initializeArgumentsAndRender(), and AbstractViewHelper\initializeArgumentsAndRender().

compile (   $argumentsVariableName,
  $renderChildrenClosureVariableName,
$initializationPhpCode,
\TYPO3\CMS\Fluid\Core\Parser\SyntaxTree\AbstractNode  $syntaxTreeNode,
\TYPO3\CMS\Fluid\Core\Compiler\TemplateCompiler  $templateCompiler 
)

Default implementation for CompilableInterface. By default, inserts a renderStatic() call to itself.

You only should override this method when you absolutely know what you are doing, and really want to influence the generated PHP code during template compilation directly.

Parameters
string$argumentsVariableName
string$renderChildrenClosureVariableName
string$initializationPhpCode
\TYPO3\CMS\Fluid\Core\Parser\SyntaxTree\AbstractNode$syntaxTreeNode
\TYPO3\CMS\Fluid\Core\Compiler\TemplateCompiler$templateCompiler
Returns
string
See Also

Definition at line 485 of file AbstractViewHelper.php.

getLogger ( )
protected
Returns
LoggerInterface

Definition at line 275 of file AbstractViewHelper.php.

References GeneralUtility\makeInstance().

Referenced by AbstractViewHelper\callRenderMethod().

hasArgument (   $argumentName)
protected
initialize ( )

Initializes the view helper before invoking the render method.

Override this method to solve tasks before the view helper content is rendered.

Returns
void

Definition at line 288 of file AbstractViewHelper.php.

Referenced by AbstractWidgetViewHelper\initializeArgumentsAndRender(), and AbstractViewHelper\initializeArgumentsAndRender().

initializeArguments ( )

Initialize all arguments. You need to override this method and call $this->registerArgument(...) inside this method, to register all your arguments.

Returns
void

Definition at line 442 of file AbstractViewHelper.php.

Referenced by AbstractViewHelper\prepareArguments().

initializeArgumentsAndRender ( )

Initialize the arguments of the ViewHelper, and call the render() method of the ViewHelper.

Returns
string the rendered ViewHelper.

Definition at line 237 of file AbstractViewHelper.php.

References AbstractViewHelper\callRenderMethod(), AbstractViewHelper\initialize(), and AbstractViewHelper\validateArguments().

injectReflectionService ( \TYPO3\CMS\Extbase\Reflection\ReflectionService  $reflectionService)

Inject a Reflection service

Parameters
\TYPO3\CMS\Extbase\Reflection\ReflectionService$reflectionServiceReflection service

Definition at line 146 of file AbstractViewHelper.php.

References AbstractViewHelper\$reflectionService.

isEscapingInterceptorEnabled ( )

Returns whether the escaping interceptor should be disabled or enabled inside the tags contents.

THIS METHOD MIGHT CHANGE WITHOUT NOTICE; NO PUBLIC API!

Returns
bool

Definition at line 158 of file AbstractViewHelper.php.

References AbstractViewHelper\$escapingInterceptorEnabled.

overrideArgument (   $name,
  $type,
  $description,
  $required = false,
  $defaultValue = null 
)
protected

Overrides a registered argument. Call this method from your ViewHelper subclass inside the initializeArguments() method if you want to override a previously registered argument.

See Also
registerArgument()
Parameters
string$nameName of the argument
string$typeType of the argument
string$descriptionDescription of the argument
bool$requiredIf TRUE, argument is required. Defaults to FALSE.
mixed$defaultValueDefault value of argument
Returns
$this, to allow chaining.
Exceptions
\TYPO3\CMS\Fluid\Core\ViewHelper\Exception

Definition at line 199 of file AbstractViewHelper.php.

Referenced by CheckboxViewHelper\initializeArguments(), and RadioViewHelper\initializeArguments().

prepareArguments ( )

Initialize all arguments and return them

Returns
array Array of instances.

Definition at line 329 of file AbstractViewHelper.php.

References AbstractViewHelper\$argumentDefinitions, AbstractViewHelper\initializeArguments(), and AbstractViewHelper\registerRenderMethodArguments().

Referenced by AbstractViewHelper\validateArguments().

registerArgument (   $name,
  $type,
  $description,
  $required = false,
  $defaultValue = null 
)
protected

Register a new argument. Call this method from your ViewHelper subclass inside the initializeArguments() method.

Parameters
string$nameName of the argument
string$typeType of the argument
string$descriptionDescription of the argument
bool$requiredIf TRUE, argument is required. Defaults to FALSE.
mixed$defaultValueDefault value of argument
Returns
$this, to allow chaining.
Exceptions
\TYPO3\CMS\Fluid\Core\ViewHelper\Exception

Definition at line 176 of file AbstractViewHelper.php.

Referenced by JsonEncodeViewHelper\__construct(), AbstractTagBasedViewHelper\__construct(), AbstractConditionViewHelper\__construct(), TranslateLabelSelectViewHelper\initializeArguments(), LayoutViewHelper\initializeArguments(), TextfieldViewHelper\initializeArguments(), PasswordViewHelper\initializeArguments(), TextareaViewHelper\initializeArguments(), ListViewHelper\initializeArguments(), ClickEnlargeViewHelper\initializeArguments(), UriViewHelper\initializeArguments(), DirectoryViewHelper\initializeArguments(), UpdatedViewHelper\initializeArguments(), CategoriesViewHelper\initializeArguments(), KeywordsViewHelper\initializeArguments(), LinkViewHelper\initializeArguments(), UploadViewHelper\initializeArguments(), AbstractFormFieldViewHelper\initializeArguments(), TypoScriptConstantsViewHelper\initializeArguments(), CheckboxViewHelper\initializeArguments(), RadioViewHelper\initializeArguments(), SectionViewHelper\initializeArguments(), IfHasRoleViewHelper\initializeArguments(), SelectViewHelper\initializeArguments(), IfViewHelper\initializeArguments(), FlashMessagesViewHelper\initializeArguments(), and AbstractTagBasedViewHelper\registerTagAttribute().

registerRenderMethodArguments ( )
private

Register method arguments for "render" by analysing the doc comment above.

Returns
void
Exceptions
\TYPO3\CMS\Fluid\Core\Parser\Exception

Definition at line 351 of file AbstractViewHelper.php.

References Fluid\$debugMode, and elseif.

Referenced by AbstractViewHelper\prepareArguments().

renderChildren ( )
static renderStatic ( array  $arguments,
\Closure  $renderChildrenClosure,
\TYPO3\CMS\Fluid\Core\Rendering\RenderingContextInterface  $renderingContext 
)
static

Default implementation for CompilableInterface. See CompilableInterface for a detailed description of this method.

Parameters
array$arguments
\Closure$renderChildrenClosure
\TYPO3\CMS\Fluid\Core\Rendering\RenderingContextInterface$renderingContext
Returns
mixed
See Also

Definition at line 501 of file AbstractViewHelper.php.

resetState ( )

Resets the ViewHelper state.

Overwrite this method if you need to get a clean state of your ViewHelper.

Returns
void

Definition at line 513 of file AbstractViewHelper.php.

setArguments ( array  $arguments)
Parameters
array$arguments
Returns
void

Definition at line 122 of file AbstractViewHelper.php.

References AbstractViewHelper\$arguments.

setRenderChildrenClosure ( \Closure  $renderChildrenClosure)

Called when being inside a cached template.

Parameters
\Closure$renderChildrenClosure
Returns
void

Definition at line 227 of file AbstractViewHelper.php.

References AbstractViewHelper\$renderChildrenClosure.

setRenderingContext ( \TYPO3\CMS\Fluid\Core\Rendering\RenderingContextInterface  $renderingContext)
Parameters
\TYPO3\CMS\Fluid\Core\Rendering\RenderingContextInterface$renderingContext
Returns
void

Definition at line 131 of file AbstractViewHelper.php.

References AbstractViewHelper\$renderingContext.

Sets all needed attributes needed for the rendering. Called by the framework. Populates $this->viewHelperNode. This is PURELY INTERNAL! Never override this method!!

Parameters
\TYPO3\CMS\Fluid\Core\Parser\SyntaxTree\ViewHelperNode$nodeView Helper node to be set.
Returns
void

Definition at line 216 of file AbstractViewHelper.php.

validateArguments ( )

Validate arguments, and throw exception if arguments do not validate.

Returns
void
Exceptions
\InvalidArgumentException

Definition at line 401 of file AbstractViewHelper.php.

References AbstractViewHelper\$argumentDefinitions, elseif, AbstractViewHelper\hasArgument(), and AbstractViewHelper\prepareArguments().

Referenced by AbstractWidgetViewHelper\initializeArgumentsAndRender(), and AbstractViewHelper\initializeArgumentsAndRender().

Member Data Documentation

$argumentDefinitionCache = array()
staticprivate

Definition at line 47 of file AbstractViewHelper.php.

$argumentDefinitions = array()
private
$arguments
protected
$argumentsInitialized = false
private

Definition at line 29 of file AbstractViewHelper.php.

$controllerContext
protected

Definition at line 78 of file AbstractViewHelper.php.

Referenced by BaseViewHelper\renderStatic().

$escapingInterceptorEnabled = true
protected
$objectManager
protected

Definition at line 109 of file AbstractViewHelper.php.

Referenced by HtmlViewHelper\simulateFrontendEnvironment().

$reflectionService
private

Definition at line 103 of file AbstractViewHelper.php.

Referenced by AbstractViewHelper\injectReflectionService().

$renderChildrenClosure = null
protected
$renderingContext
protected
$templateVariableContainer
protected
$viewHelperNode
private

Definition at line 54 of file AbstractViewHelper.php.

$viewHelperVariableContainer
protected