21 private $results = [];
31 private $structureElementTypes;
39 $this->urlBuilder = $urlBuilder;
40 $this->structureElementTypes = $structureElementTypes;
48 return $this->results;
59 $elementData = $structureElement->
getData();
61 if (!in_array($elementData[
'_elementType'], array_keys($this->structureElementTypes))) {
65 if (isset($this->structureElementTypes[$elementData[
'_elementType']])) {
66 $urlParamsBuilder = $this->structureElementTypes[$elementData[
'_elementType']];
67 $urlParams = $urlParamsBuilder->build($structureElement);
71 'id' => $structureElement->
getPath(),
73 'name' => (string)$structureElement->
getLabel(),
74 'description' => $elementPathLabel,
75 'url' => $this->urlBuilder->getUrl(
'*/system_config/edit', $urlParams),
add(StructureElementInterface $structureElement, $elementPathLabel)
__construct(UrlInterface $urlBuilder, array $structureElementTypes)