ParameterDisplayBuilder
in package
FinalYes
Builds display rows (name/value/type) from parameter value relations; the shared core of `prepareSpecifications` across modules (Comcat, Bazaar).
Per-type formatting (display text, range "from-to", option names, OpeningHours value object)
is delegated to AbstractParameterHandler::formatValue() through the registry. Only the
common loop stays here: skipping child, skip-key and empty values, the render-time content
filter and building the row name from the translation.
A row value is either a string (for a cell) or an object (a typed value object for its own
template, e.g. OpeningHours); objects bypass the content filter.
Table of Contents
Properties
Methods
- __construct() : mixed
- build() : array<int, array{name: string, value: string|object, type: ?int, useEditor: bool}>
- resolveName() : string
Properties
$registry
private
ParameterHandlerRegistry
$registry
Methods
__construct()
public
__construct([ParameterHandlerRegistry|null $registry = null ]) : mixed
Parameters
- $registry : ParameterHandlerRegistry|null = null
build()
public
build(iterable<string|int, ParameterRelInterface> $parameterRels, int|null $languageId, array<string|int, string> $skipKeys, array<string|int, string> $blacklistedWords) : array<int, array{name: string, value: string|object, type: ?int, useEditor: bool}>
Parameters
- $parameterRels : iterable<string|int, ParameterRelInterface>
- $languageId : int|null
- $skipKeys : array<string|int, string>
-
parameter keys to omit
- $blacklistedWords : array<string|int, string>
-
forbidden words in the target language
Return values
array<int, array{name: string, value: string|object, type: ?int, useEditor: bool}>resolveName()
private
resolveName(ParameterInterface $parameter, int|null $languageId) : string
Parameters
- $parameter : ParameterInterface
- $languageId : int|null