interface FormRendererInterface

Renders a form into HTML.

Methods

FormRendererEngineInterface
getEngine()

Returns the engine used by this renderer.

void
setTheme(FormView$view,mixed$themes,bool$useDefaultThemes =true)

Sets the theme(s) to be used for rendering a view and its children.

string
renderBlock(FormView$view,string$blockName,array$variables =[])

Renders a named block of the form theme.

string
searchAndRenderBlock(FormView$view,string$blockNameSuffix,array$variables =[])

Searches and renders a block for a given name suffix.

string
renderCsrfToken(string$tokenId)

Renders a CSRF token.

string
humanize(string$text)

Makes a technical name human readable.

Details

FormRendererEngineInterface getEngine()

Returns the engine used by this renderer.

Return Value

FormRendererEngineInterface

void setTheme(FormView$view,mixed$themes,bool$useDefaultThemes =true)

Sets the theme(s) to be used for rendering a view and its children.

Parameters

FormView $view The view to assign the theme(s) to
mixed $themes The theme(s). The type of these themes is open to the implementation.
bool $useDefaultThemes If true, will use default themes specified in the renderer

Return Value

void

string renderBlock(FormView$view,string$blockName,array$variables =[])

Renders a named block of the form theme.

Parameters

FormView $view
string $blockName
array $variables

Return Value

string

string searchAndRenderBlock(FormView$view,string$blockNameSuffix,array$variables =[])

Searches and renders a block for a given name suffix.

The block is searched by combining the block names stored in the form view with the given suffix. If a block name is found, that block is rendered.

If this method is called recursively, the block search is continued where a block was found before.

Parameters

FormView $view
string $blockNameSuffix
array $variables

Return Value

string

string renderCsrfToken(string$tokenId)

Renders a CSRF token.

Use this helper for CSRF protection without the overhead of creating a form.

<input type="hidden" name="token" value="<?php $renderer->renderCsrfToken('rm_user_'.$user->getId()) ?>">

Check the token in your action using the same token ID.

// $csrfProvider being an instance of Symfony\Component\Security\Csrf\TokenGenerator\TokenGeneratorInterface
if (!$csrfProvider->isCsrfTokenValid('rm_user_'.$user->getId(), $token)) {
    throw new \RuntimeException('CSRF attack detected.');
}

Parameters

string $tokenId

Return Value

string

string humanize(string$text)

Makes a technical name human readable.

Sequences of underscores are replaced by single spaces. The first letter of the resulting string is capitalized, while all other letters are turned to lowercase.

Parameters

string $text

Return Value

string