LinkPopup extends AbstractNode uses OnFieldChangeTrait
Renders the icon with link parameters to open the element browser.
Used in InputLinkElement.
Table of Contents
Properties
- $data : array<string|int, mixed>
- Main data array to work on, given from parent to child elements
- $defaultFieldControl : array<string|int, mixed>
- A list of default field controls added to the element / container.
- $defaultFieldInformation : array<string|int, mixed>
- A list of default field information added to the element / container.
- $defaultFieldWizard : array<string|int, mixed>
- A list of default field wizards added to the element / container.
- $nodeFactory : NodeFactory
- Instance of the node factory to create sub elements, container and single element expansions.
Methods
- __construct() : mixed
- Set data to data array and register node factory to render sub elements
- render() : array<string|int, mixed>
- Link popup control
-
forwardOnFieldChangeQueryParams()
: array{fieldChangeFunc: array
, fieldChangeFuncHash: string} - Forwards URL query params for `LinkBrowserController`
- getOnFieldChangeAttrs() : array<string, string>
- getOnFieldChangeItems() : array<int, array<string|int, mixed>>
- getValidationDataAsJsonString() : string
- Build JSON string for validations rules.
- initializeResultArray() : array<string|int, mixed>
- Initialize the array that is returned to parent after calling. This structure is identical for *all* nodes. Parent will merge the return of a child with its own stuff and in itself return an array of the same structure.
- mergeChildReturnIntoExistingResult() : array<string|int, mixed>
- Merge existing data with a child return array.
- validateOnFieldChange() : bool
Properties
$data
Main data array to work on, given from parent to child elements
protected
array<string|int, mixed>
$data
= []
$defaultFieldControl
A list of default field controls added to the element / container.
protected
array<string|int, mixed>
$defaultFieldControl
= []
This property is often reset by single elements.
$defaultFieldInformation
A list of default field information added to the element / container.
protected
array<string|int, mixed>
$defaultFieldInformation
= []
$defaultFieldWizard
A list of default field wizards added to the element / container.
protected
array<string|int, mixed>
$defaultFieldWizard
= []
This property is often reset by single elements.
$nodeFactory
Instance of the node factory to create sub elements, container and single element expansions.
protected
NodeFactory
$nodeFactory
Methods
__construct()
Set data to data array and register node factory to render sub elements
public
__construct(NodeFactory $nodeFactory, array<string|int, mixed> $data) : mixed
Parameters
- $nodeFactory : NodeFactory
- $data : array<string|int, mixed>
render()
Link popup control
public
render() : array<string|int, mixed>
Return values
array<string|int, mixed> —As defined by FieldControl class
forwardOnFieldChangeQueryParams()
Forwards URL query params for `LinkBrowserController`
protected
forwardOnFieldChangeQueryParams(array<string, string|OnFieldChangeInterface> $items) : array{fieldChangeFunc: array, fieldChangeFuncHash: string}
Parameters
- $items : array<string, string|OnFieldChangeInterface>
-
fieldChangeFunc
items
Return values
array{fieldChangeFunc: arrayrelevant URL query params for LinkBrowserController
getOnFieldChangeAttrs()
protected
getOnFieldChangeAttrs(string $event, array<string, string|OnFieldChangeInterface> $items) : array<string, string>
Parameters
- $event : string
-
target client event, either
change
orclick
- $items : array<string, string|OnFieldChangeInterface>
-
fieldChangeFunc
items
Return values
array<string, string> —HTML attrs, not encoded - consumers MUST encode with htmlspecialchars
getOnFieldChangeItems()
protected
getOnFieldChangeItems(array<string, string|OnFieldChangeInterface> $items) : array<int, array<string|int, mixed>>
Parameters
- $items : array<string, string|OnFieldChangeInterface>
-
fieldChangeFunc
items
Return values
array<int, array<string|int, mixed>>getValidationDataAsJsonString()
Build JSON string for validations rules.
protected
getValidationDataAsJsonString(array<string|int, mixed> $config) : string
Parameters
- $config : array<string|int, mixed>
Return values
stringinitializeResultArray()
Initialize the array that is returned to parent after calling. This structure is identical for *all* nodes. Parent will merge the return of a child with its own stuff and in itself return an array of the same structure.
protected
initializeResultArray() : array<string|int, mixed>
Return values
array<string|int, mixed>mergeChildReturnIntoExistingResult()
Merge existing data with a child return array.
protected
mergeChildReturnIntoExistingResult(array<string|int, mixed> $existing, array<string|int, mixed> $childReturn[, bool $mergeHtml = true ]) : array<string|int, mixed>
The incoming $childReturn array should be initialized using initializeResultArray() beforehand.
Parameters
- $existing : array<string|int, mixed>
-
Currently merged array
- $childReturn : array<string|int, mixed>
-
Array returned by child
- $mergeHtml : bool = true
-
If false, the ['html'] section of $childReturn will NOT be added to $existing
Return values
array<string|int, mixed> —Result array
validateOnFieldChange()
protected
validateOnFieldChange(array<string, string|OnFieldChangeInterface> $items[, bool $deprecate = true ]) : bool
Parameters
- $items : array<string, string|OnFieldChangeInterface>
-
fieldChangeFunc
items - $deprecate : bool = true
-
whether to trigger deprecations
Return values
bool —whether all items implement OnFieldChangeInterface