/** * Get the settings * * @param Tx_PtExtlist_Domain_Configuration_ConfigurationBuilder $configurationBuilder * @return array */ protected static function getExportSettingsForCurrentView(Tx_PtExtlist_Domain_Configuration_ConfigurationBuilder $configurationBuilder) { $allExportSettings = $configurationBuilder->getSettingsForConfigObject('export'); $controllerSettings = $configurationBuilder->getSettings('controller'); $selectedViewSettingsKey = $controllerSettings['Export']['download']['view']; $exportSettingsPath = explode('.', $selectedViewSettingsKey); $exportSettings = \TYPO3\CMS\Extbase\Utility\ArrayUtility::getValueByPath($configurationBuilder->getSettings(), $exportSettingsPath); /* In this case we have to merge the prototype settings again because the prototype settings are filled from flexform.... * This smells ... * TODO: find a better way .... */ return $configurationBuilder->getMergedSettingsWithPrototype($exportSettings, 'export'); }
public function testSetAndMergeGlobalAndLocalConfig() { $configurationBuilder = new Tx_PtExtlist_Domain_Configuration_ConfigurationBuilder($this->settings, 'test'); $settings = $configurationBuilder->getSettings(); $this->assertEquals($settings['abc'], 2); $this->assertEquals($settings['def'], 3); }
/** * Returns a instance of a sorter configuration. * * @param Tx_PtExtlist_Domain_Configuration_ConfigurationBuilder $configurationBuilder * @return Tx_PtExtlist_Domain_Configuration_Sorting_SorterConfig */ public static function getInstance(Tx_PtExtlist_Domain_Configuration_ConfigurationBuilder $configurationBuilder) { $sorterSettings = $configurationBuilder->getSettings('sorter'); if (!is_array($sorterSettings)) { $sorterSettings = array(); } $sorterConfig = new Tx_PtExtlist_Domain_Configuration_Sorting_SorterConfig($configurationBuilder, $sorterSettings); return $sorterConfig; }
/** @test */ public function getFilterByFilterIdentifierReturnsExpectedFilter() { $dataBackendFactoryMock = $this->getDataBackendFactoryMockForListConfigurationAndListIdentifier($this->configurationBuilderMock->getSettings(), $this->configurationBuilderMock->getListIdentifier()); $filterboxFactory = $this->objectManager->get('Tx_PtExtlist_Domain_Model_Filter_FilterboxFactory'); /* @var $filterboxFactory Tx_PtExtlist_Domain_Model_Filter_FilterboxFactory */ $filterboxFactory->setDataBackendFactory($dataBackendFactoryMock); $filterbox = $filterboxFactory->createInstance($this->configurationBuilderMock->buildFilterConfiguration()->getFilterBoxConfig('testfilterbox')); $this->assertSame('testfilterbox', $filterbox->getFilterByFilterIdentifier('filter1')->getFilterBoxIdentifier()); }