![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/magento/module-config/Model/Config/Structure/Mapper/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ /** * System Configuration Path Mapper */ namespace Magento\Config\Model\Config\Structure\Mapper; /** * @api * @since 100.0.2 */ class Path extends \Magento\Config\Model\Config\Structure\AbstractMapper { /** * Apply map * * @param array $data * @return array */ public function map(array $data) { if ($this->_hasValue('config/system/sections', $data)) { foreach ($data['config']['system']['sections'] as &$sectionConfig) { if ($this->_hasValue('children', $sectionConfig)) { foreach ($sectionConfig['children'] as &$groupConfig) { $groupConfig = $this->_processConfig($groupConfig, $sectionConfig); } } } } return $data; } /** * Process configuration * * @param array $elementConfig * @param array $parentConfig * @return array */ protected function _processConfig(array $elementConfig, array $parentConfig) { $parentPath = $this->_hasValue('path', $parentConfig) ? $parentConfig['path'] . '/' : ''; $parentPath .= $parentConfig['id']; $elementConfig['path'] = $parentPath; if ($this->_hasValue('children', $elementConfig)) { foreach ($elementConfig['children'] as &$subConfig) { $subConfig = $this->_processConfig($subConfig, $elementConfig); } } return $elementConfig; } }