eZ\Bundle\EzPublishCoreBundle\Tests\DependencyInjection\Configuration\Parser\PageTest::getPageConfigForSiteaccessFromDefaults PHP Метод

getPageConfigForSiteaccessFromDefaults() приватный Метод

Returns expected ezpage configuration for a siteaccess, where only enabled blocks/layouts should be present.
private getPageConfigForSiteaccessFromDefaults ( array $defaultConfig, array $additionalConfig = [] ) : array
$defaultConfig array
$additionalConfig array
Результат array
    private function getPageConfigForSiteaccessFromDefaults(array $defaultConfig, array $additionalConfig = array())
    {
        $pageConfigForSiteaccess = array('layouts' => array(), 'blocks' => array(), 'enabledLayouts' => $defaultConfig['enabledLayouts'], 'enabledBlocks' => $defaultConfig['enabledBlocks']);
        // Default settings
        foreach ($defaultConfig['enabledLayouts'] as $enabledLayout) {
            $pageConfigForSiteaccess['layouts'][$enabledLayout] = $defaultConfig['layouts'][$enabledLayout];
        }
        foreach ($defaultConfig['enabledBlocks'] as $enabledBlock) {
            $pageConfigForSiteaccess['blocks'][$enabledBlock] = $defaultConfig['blocks'][$enabledBlock];
        }
        // Siteaccess settings
        if (!empty($additionalConfig)) {
            foreach ($additionalConfig['enabledLayouts'] as $enabledLayout) {
                if (isset($additionalConfig['layouts'][$enabledLayout])) {
                    $pageConfigForSiteaccess['layouts'][$enabledLayout] = $additionalConfig['layouts'][$enabledLayout];
                    $pageConfigForSiteaccess['enabledLayouts'][] = $enabledLayout;
                }
            }
            foreach ($additionalConfig['enabledBlocks'] as $enabledBlock) {
                if (isset($additionalConfig['blocks'][$enabledBlock])) {
                    $pageConfigForSiteaccess['blocks'][$enabledBlock] = $additionalConfig['blocks'][$enabledBlock];
                    $pageConfigForSiteaccess['enabledBlocks'][] = $enabledBlock;
                }
            }
        }
        $pageConfigForSiteaccess['enabledBlocks'] = array_unique($pageConfigForSiteaccess['enabledBlocks']);
        $pageConfigForSiteaccess['enabledLayouts'] = array_unique($pageConfigForSiteaccess['enabledLayouts']);
        return $pageConfigForSiteaccess;
    }