34 'renderType' =>
'tcaDescription',
44 'localizationStateSelector' => [
45 'renderType' =>
'localizationStateSelector',
47 'otherLanguageContent' => [
48 'renderType' =>
'otherLanguageContent',
50 'localizationStateSelector'
53 'defaultLanguageDifferences' => [
54 'renderType' =>
'defaultLanguageDifferences',
56 'otherLanguageContent',
68 'renderType' =>
'tableWizard',
89 $parameterArray = $this->data[
'parameterArray'];
92 $itemValue = $parameterArray[
'itemFormElValue'];
93 $config = $parameterArray[
'fieldConf'][
'config'];
94 $evalList = GeneralUtility::trimExplode(
',', $config[
'eval'],
true);
100 $originalRows = $rows;
101 $itemFormElementValueLength = strlen($itemValue);
102 if ($itemFormElementValueLength > $this->charactersPerRow * 2) {
104 round($itemFormElementValueLength / $this->charactersPerRow),
105 count(explode(LF, $itemValue)),
108 if ($rows < $originalRows) {
109 $rows = $originalRows;
114 $fieldInformationHtml = $fieldInformationResult[
'html'];
117 if ($config[
'readOnly']) {
119 $html[] =
'<div class="formengine-field-item t3js-formengine-field-item">';
120 $html[] = $fieldInformationHtml;
121 $html[] =
'<div class="form-wizards-wrap">';
122 $html[] =
'<div class="form-wizards-element">';
123 $html[] =
'<div class="form-control-wrap" style="max-width: ' . $width .
'px">';
124 $html[] =
'<textarea class="form-control" rows="' . $rows .
'" disabled>';
125 $html[] = htmlspecialchars($itemValue);
126 $html[] =
'</textarea>';
131 $resultArray[
'html'] = implode(LF, $html);
136 foreach ($evalList as $func) {
141 if (isset(
$GLOBALS[
'TYPO3_CONF_VARS'][
'SC_OPTIONS'][
'tce'][
'formevals'][$func])) {
142 if (class_exists($func)) {
143 $evalObj = GeneralUtility::makeInstance($func);
144 if (method_exists($evalObj,
'deevaluateFieldValue')) {
146 'value' => $itemValue
148 $itemValue = $evalObj->deevaluateFieldValue($_params);
156 'name' => htmlspecialchars($parameterArray[
'itemFormElName']),
158 'data-formengine-input-name' => htmlspecialchars($parameterArray[
'itemFormElName']),
160 'wrap' => $config[
'wrap'] ?:
'virtual',
161 'onChange' => implode(
'', $parameterArray[
'fieldChangeFunc']),
165 't3js-formengine-textarea',
166 'formengine-textarea',
168 if ($config[
'fixedFont']) {
169 $classes[] =
'text-monospace';
171 if ($config[
'enableTabulator']) {
172 $classes[] =
't3js-enable-tab';
174 $attributes[
'class'] = implode(
' ', $classes);
175 $maximumHeight = (int)$backendUser->uc[
'resizeTextareas_MaxHeight'];
176 if ($maximumHeight > 0) {
178 $attributes[
'style'] =
'max-height: ' . $maximumHeight .
'px';
180 if (isset($config[
'max']) && (int)$config[
'max'] > 0) {
181 $attributes[
'maxlength'] = (int)$config[
'max'];
183 if (!empty($config[
'placeholder'])) {
184 $attributes[
'placeholder'] = htmlspecialchars(trim($config[
'placeholder']));
188 $fieldControlHtml = $fieldControlResult[
'html'];
192 $fieldWizardHtml = $fieldWizardResult[
'html'];
196 $html[] =
'<div class="formengine-field-item t3js-formengine-field-item">';
197 $html[] = $fieldInformationHtml;
198 $html[] =
'<div class="form-control-wrap" style="max-width: ' . $width .
'px">';
199 $html[] =
'<div class="form-wizards-wrap">';
200 $html[] =
'<div class="form-wizards-element">';
201 $html[] =
'<textarea ' . GeneralUtility::implodeAttributes($attributes,
true) .
'>' . htmlspecialchars($itemValue) .
'</textarea>';
203 if (!empty($fieldControlHtml)) {
204 $html[] =
'<div class="form-wizards-items-aside">';
205 $html[] =
'<div class="btn-group">';
206 $html[] = $fieldControlHtml;
210 if (!empty($fieldWizardHtml)) {
211 $html[] =
'<div class="form-wizards-items-bottom">';
212 $html[] = $fieldWizardHtml;
219 $resultArray[
'html'] = implode(LF, $html);