/** * @param Tx_PtExtlist_Domain_Configuration_ConfigurationBuilder $configurationBuilder * @return Tx_PtExtlist_Domain_Configuration_Renderer_RendererChainConfig */ public static function getInstance(Tx_PtExtlist_Domain_Configuration_ConfigurationBuilder $configurationBuilder) { $rendererChainConfiguration = null; $rendererChainSettings = $configurationBuilder->getSettingsForConfigObject('rendererChain'); if (is_array($rendererChainSettings['rendererConfigs'])) { ksort($rendererChainSettings['rendererConfigs']); $rendererChainConfiguration = new Tx_PtExtlist_Domain_Configuration_Renderer_RendererChainConfig($configurationBuilder, $rendererChainSettings); foreach ($rendererChainSettings['rendererConfigs'] as $rendererIdentifier => $rendererSettings) { $rendererConfiguration = Tx_PtExtlist_Domain_Configuration_Renderer_RendererConfigFactory::getRendererConfiguration($configurationBuilder, $rendererSettings); $rendererChainConfiguration->addRendererConfig($rendererConfiguration, $rendererIdentifier); } } return $rendererChainConfiguration; }
/** * @param Tx_PtExtlist_Domain_Model_List_Row $row * @param $rowIndex * @return Tx_PtExtlist_Domain_Model_List_Row */ public function renderSingleRow(Tx_PtExtlist_Domain_Model_List_Row $row, $rowIndex) { if (!$this->rendererChainConfiguration->isEnabled()) { return $row; } foreach ($this->renderers as $renderer) { /* @var $renderer Tx_PtExtlist_Domain_Renderer_RendererInterface */ $row = $renderer->renderSingleRow($row, $rowIndex); } return $row; }