36 $table = $this->data[
'tableName'];
37 $fieldListToRender = $this->data[
'fieldListToRender'];
38 $recordTypeValue = $this->data[
'recordTypeValue'];
41 if (!empty(
$GLOBALS[
'TCA'][$table][
'interface'][
'always_description'])) {
43 $languageService->loadSingleTableDescription($table);
46 $fieldListToRender = array_unique(GeneralUtility::trimExplode(
',', $fieldListToRender,
true));
48 $fieldsByShowitem = $this->data[
'processedTca'][
'types'][$recordTypeValue][
'showitem'];
49 $fieldsByShowitem = GeneralUtility::trimExplode(
',', $fieldsByShowitem,
true);
51 $finalFieldsList = [];
52 foreach ($fieldListToRender as $fieldName) {
53 foreach ($fieldsByShowitem as $fieldByShowitem) {
55 if ($fieldByShowitemArray[
'fieldName'] === $fieldName) {
56 $finalFieldsList[] = implode(
';', $fieldByShowitemArray);
59 if ($fieldByShowitemArray[
'fieldName'] ===
'--palette--'
60 && isset($this->data[
'processedTca'][
'palettes'][$fieldByShowitemArray[
'paletteName']][
'showitem'])
61 && is_string($this->data[
'processedTca'][
'palettes'][$fieldByShowitemArray[
'paletteName']][
'showitem'])
63 $paletteName = $fieldByShowitemArray[
'paletteName'];
64 $paletteFields = GeneralUtility::trimExplode(
',', $this->data[
'processedTca'][
'palettes'][$paletteName][
'showitem'],
true);
65 foreach ($paletteFields as $paletteField) {
67 if ($paletteFieldArray[
'fieldName'] === $fieldName) {
68 $finalFieldsList[] = implode(
';', $paletteFieldArray);
77 $options[
'fieldsArray'] = $finalFieldsList;
78 $options[
'renderType'] =
'paletteAndSingleContainer';
79 return $this->nodeFactory->create($options)->render();