/** * @param Tx_Yag_Domain_Model_Item $item * @return string */ public function render(Tx_Yag_Domain_Model_Item $item) { $customMetaDataArray = $item->getItemMeta()->getCustomMetaDataArray(); $content = ''; if (is_array($customMetaDataArray) && count($customMetaDataArray) || $this->arguments['showEmptyFields']) { foreach ($this->definedCustomMetaDataConfigCollection as $customMetaDataKey => $customMetaDataConfig) { $customMetaData['config'] = $customMetaDataConfig; if (array_key_exists($customMetaDataKey, $customMetaDataArray)) { $customMetaData['data'] = $customMetaDataArray[$customMetaDataKey]; } $this->templateVariableContainer->add('customMetaData', $customMetaData); $content .= $this->renderChildren(); $this->templateVariableContainer->remove('customMetaData'); } } return $content; }
/** * Replace the variables in the given format string with fileName or properties of the * itemMeta object. * * @param Tx_Yag_Domain_Model_Item $item * @param string $format * @param array $additionalVars * @return Tx_Yag_Domain_Model_Item $item; */ protected function processStringFromMetaData(Tx_Yag_Domain_Model_Item $item, $format, $additionalVars = array()) { if ($item->getItemMeta() instanceof Tx_Yag_Domain_Model_ItemMeta) { $vars = $item->getItemMeta()->getAttributeArray(); } else { $vars = array(); } $vars['origFileName'] = $item->getOriginalFilename(); $vars['fileName'] = $this->processTitleFromFileName($item->getOriginalFilename()); $vars = \TYPO3\CMS\Extbase\Utility\ArrayUtility::arrayMergeRecursiveOverrule($vars, $additionalVars); $formattedString = Tx_PtExtlist_Utility_RenderValue::renderDataByConfigArray($vars, $format); return $formattedString; }