/** * Call back function for \TYPO3\CMS\Core\Configuration\FlexForm\FlexFormTools class * Basically just setting the value in a new array (thus cleaning because only values that are valid are visited!) * * @param array $dsArr Data structure for the current value * @param mixed $data Current value * @param array $PA Additional configuration used in calling function * @param string $path Path of value in DS structure * @param FlexFormTools $pObj caller * @return void */ public function cleanFlexFormXML_callBackFunction($dsArr, $data, $PA, $path, $pObj) { // Just setting value in our own result array, basically replicating the structure: $pObj->setArrayValueByPath($path, $this->cleanFlexFormXML, $data); // Looking if an "extension" called ".vDEFbase" is found and if so, accept that too: if ($GLOBALS['TYPO3_CONF_VARS']['BE']['flexFormXMLincludeDiffBase']) { $vDEFbase = $pObj->getArrayValueByPath($path . '.vDEFbase', $pObj->traverseFlexFormXMLData_Data); if (isset($vDEFbase)) { $pObj->setArrayValueByPath($path . '.vDEFbase', $this->cleanFlexFormXML, $vDEFbase); } } }
/** * FlexForm call back function, see translationDetails. This is used for langDatabaseOverlay FCEs! * Two additional paramas are used: * $this->_callBackParams_translationXMLArray * $this->_callBackParams_keyForTranslationDetails * * @param array $dsArr Data Structure * @param string $dataValue Data value * @param array $PA Various stuff in an array * @param string $structurePath Path to location in flexform * @param FlexFormTools $pObj parent object * @return void */ function translationDetails_flexFormCallBackForOverlay($dsArr, $dataValue, $PA, $structurePath, $pObj) { //echo $dataValue.'<hr>'; $translValue = $pObj->getArrayValueByPath($structurePath, $this->_callBackParams_translationXMLArray); $diffDefaultValue = $pObj->getArrayValueByPath($structurePath, $this->_callBackParams_translationDiffsourceXMLArray); foreach ($this->previewLanguages as $prevSysUid) { $previewLanguageValues[$prevSysUid] = $pObj->getArrayValueByPath($structurePath, $this->_callBackParams_previewLanguageXMLArrays[$prevSysUid]); } $key = $this->_callBackParams_keyForTranslationDetails . ':' . $structurePath; $this->translationDetails_addField($key, $dsArr['TCEforms'], $dataValue, $translValue, $diffDefaultValue, $previewLanguageValues, $this->_callBackParams_currentRow); unset($pObj); }