class TwigRendererEngine extends AbstractRendererEngine implements TwigRendererEngineInterface
Constants
CACHE_KEY_VAR | The variable in {@link FormView} used as cache key. |
Methods
__construct(array $defaultThemes = array()) Creates a new renderer engine. | from AbstractRendererEngine | |
setTheme(FormView $view, mixed $themes) Sets the theme(s) to be used for rendering a view and its children. | from AbstractRendererEngine | |
mixed | getResourceForBlockName(FormView $view, string $blockName) Returns the resource for a block name. | from AbstractRendererEngine |
mixed | getResourceForBlockNameHierarchy(FormView $view, array $blockNameHierarchy, int $hierarchyLevel) Returns the resource for a block hierarchy. | from AbstractRendererEngine |
int|bool | getResourceHierarchyLevel(FormView $view, array $blockNameHierarchy, int $hierarchyLevel) Returns the hierarchy level at which a resource can be found. | from AbstractRendererEngine |
setEnvironment(Twig_Environment $environment) Sets Twig's environment. | ||
string | renderBlock(FormView $view, mixed $resource, string $blockName, array $variables = array()) Renders a block in the given renderer resource. |
Details
__construct(array $defaultThemes = array())
Creates a new renderer engine.
setTheme(FormView $view, mixed $themes)
Sets the theme(s) to be used for rendering a view and its children.
mixed getResourceForBlockName(FormView $view, string $blockName)
Returns the resource for a block name.
The resource is first searched in the themes attached to $view, then in the themes of its parent view and so on, until a resource was found.
The type of the resource is decided by the implementation. The resource is later passed to {@link renderBlock()} by the rendering algorithm.
mixed getResourceForBlockNameHierarchy(FormView $view, array $blockNameHierarchy, int $hierarchyLevel)
Returns the resource for a block hierarchy.
A block hierarchy is an array which starts with the root of the hierarchy and continues with the child of that root, the child of that child etc. The following is an example for a block hierarchy:
formwidget
textwidget
url_widget
In this example, "url_widget" is the most specific block, while the other blocks are its ancestors in the hierarchy.
The second parameter $hierarchyLevel determines the level of the hierarchy that should be rendered. For example, if $hierarchyLevel is 2 for the above hierarchy, the engine will first look for the block "urlwidget", then, if that does not exist, for the block "textwidget" etc.
The type of the resource is decided by the implementation. The resource is later passed to {@link renderBlock()} by the rendering algorithm.
int|bool getResourceHierarchyLevel(FormView $view, array $blockNameHierarchy, int $hierarchyLevel)
Returns the hierarchy level at which a resource can be found.
A block hierarchy is an array which starts with the root of the hierarchy and continues with the child of that root, the child of that child etc. The following is an example for a block hierarchy:
formwidget
textwidget
url_widget
The second parameter $hierarchyLevel determines the level of the hierarchy that should be rendered.
If we call this method with the hierarchy level 2, the engine will first look for a resource for block "urlwidget". If such a resource exists, the method returns 2. Otherwise it tries to find a resource for block "textwidget" (at level 1) and, again, returns 1 if a resource was found. The method continues to look for resources until the root level was reached and nothing was found. In this case false is returned.
The type of the resource is decided by the implementation. The resource is later passed to {@link renderBlock()} by the rendering algorithm.
setEnvironment(Twig_Environment $environment)
Sets Twig's environment.
string renderBlock(FormView $view, mixed $resource, string $blockName, array $variables = array())
Renders a block in the given renderer resource.
The resource can be obtained by calling {@link getResourceForBlock()} or {@link getResourceForBlockHierarchy()}. The type of the resource is decided by the implementation.
Please login to continue.