class IfAccessViewHelper extends AbstractConditionViewHelper (View source)

This view helper implements an ifAccess/else condition.

= Examples =

This is being shown in case you have access to the given privilege ``` Everything inside the tag is being displayed if you have access to the given privilege. This is being shown in case you have access. This is being displayed in case you do not have access. ``` Everything inside the "then" tag is displayed if you have access. Otherwise, everything inside the "else"-tag is displayed. {f:security.ifAccess(privilegeTarget: 'someTarget', parameters: '{param1: \'value1\'}', then: 'has access', else: 'has no access')} ```

Properties

protected ControllerContext $controllerContext

Controller Context to use

from  AbstractViewHelper
protected ObjectManagerInterface $objectManager from  AbstractViewHelper
protected LoggerInterface $logger from  AbstractViewHelper
protected bool $escapeOutput from  AbstractConditionViewHelper

Methods

void
setRenderingContext(RenderingContextInterface $renderingContext)

No description

void
injectObjectManager(ObjectManagerInterface $objectManager)

No description

void
injectLogger(LoggerInterface $logger)

Injects the (system) logger based on PSR-3.

initializeArguments()

Initializes the "then" and "else" arguments

static bool
evaluateCondition(array|null $arguments, RenderingContextInterface $renderingContext)

No description

static mixed
renderStatic(array $arguments, Closure $renderChildrenClosure, RenderingContextInterface $renderingContext)

No description

static string
evaluateElseClosures(array $closures, array $conditionClosures, RenderingContextInterface $renderingContext)

No description

mixed
renderThenChild()

Returns value of "then" attribute.

string
renderElseChild()

Returns value of "else" attribute.

string
compile(string $argumentsName, string $closureName, string $initializationPhpCode, ViewHelperNode $node, TemplateCompiler $compiler)

The compiled ViewHelper adds two new ViewHelper arguments: thenClosure and elseClosure.

static mixed
renderResult(bool $isConditionFullfilled, array $arguments, RenderingContextInterface $renderingContext)

No description

string
render()

renders child if access to the given resource is allowed, otherwise renders child.

getPrivilegeManager(RenderingContext $renderingContext)

No description

Details

void setRenderingContext(RenderingContextInterface $renderingContext)

No description

Parameters

RenderingContextInterface $renderingContext

Return Value

void

void injectObjectManager(ObjectManagerInterface $objectManager)

No description

Parameters

ObjectManagerInterface $objectManager

Return Value

void

void injectLogger(LoggerInterface $logger)

Injects the (system) logger based on PSR-3.

Parameters

LoggerInterface $logger

Return Value

void

bool isEscapingInterceptorEnabled()

No description

Return Value

bool

initializeArguments()

Initializes the "then" and "else" arguments

static protected bool evaluateCondition(array|null $arguments, RenderingContextInterface $renderingContext)

No description

Parameters

array|null $arguments
RenderingContextInterface $renderingContext

Return Value

bool

static mixed renderStatic(array $arguments, Closure $renderChildrenClosure, RenderingContextInterface $renderingContext)

No description

Parameters

array $arguments
Closure $renderChildrenClosure
RenderingContextInterface $renderingContext

Return Value

mixed

static protected string evaluateElseClosures(array $closures, array $conditionClosures, RenderingContextInterface $renderingContext)

No description

Parameters

array $closures
array $conditionClosures
RenderingContextInterface $renderingContext

Return Value

string

protected mixed renderThenChild()

Returns value of "then" attribute.

If then attribute is not set, iterates through child nodes and renders ThenViewHelper. If then attribute is not set and no ThenViewHelper and no ElseViewHelper is found, all child nodes are rendered

Return Value

mixed

rendered ThenViewHelper or contents of if no ThenViewHelper was found

protected string renderElseChild()

Returns value of "else" attribute.

If else attribute is not set, iterates through child nodes and renders ElseViewHelper. If else attribute is not set and no ElseViewHelper is found, an empty string will be returned.

Return Value

string

rendered ElseViewHelper or an empty string if no ThenViewHelper was found

string compile(string $argumentsName, string $closureName, string $initializationPhpCode, ViewHelperNode $node, TemplateCompiler $compiler)

The compiled ViewHelper adds two new ViewHelper arguments: thenClosure and elseClosure.

These contain closures which are be executed to render the then(), respectively else() case.

Parameters

string $argumentsName
string $closureName
string $initializationPhpCode
ViewHelperNode $node
TemplateCompiler $compiler

Return Value

string

static protected mixed renderResult(bool $isConditionFullfilled, array $arguments, RenderingContextInterface $renderingContext)

No description

Parameters

bool $isConditionFullfilled
array $arguments
RenderingContextInterface $renderingContext

Return Value

mixed

string render()

renders child if access to the given resource is allowed, otherwise renders child.

Return Value

string

the rendered then/else child nodes depending on the access

static protected PrivilegeManagerInterface getPrivilegeManager(RenderingContext $renderingContext)

No description

Parameters

RenderingContext $renderingContext

Return Value

PrivilegeManagerInterface