/** * @param mixed $varInput * @return mixed */ protected function validator($varInput) { // Get array with language id $arrData = $this->activeRecord ? $this->activeRecord->{$this->strName} : $GLOBALS['TL_CONFIG'][$this->strName]; if (is_array($varInput['value'])) { // Check if translation fields should not be empty saved if (!$GLOBALS['TL_CONFIG']['dontfillEmptyTranslationFields']) { // Fill all empty fields with the content of the fallback field $varInput['value'] = WidgetUtil::addFallbackValueToEmptyField($varInput['value']); parent::validator($varInput['value']); } else { // Check only the first field parent::validator($varInput['value'][key($varInput['value'])]); } } $arrData = deserialize($arrData); if (!is_array($arrData) || empty($arrData)) { $arrData = array(); } // Save values and return fid $varInput['value'] = TranslationFieldsModel::saveValuesAndReturnFid($varInput['value'], isset($arrData['value']) ? $arrData['value'] : 0); return $varInput; }