diff --git a/typo3/sysext/backend/Classes/Form/FormDataProvider/TcaSelectItems.php b/typo3/sysext/backend/Classes/Form/FormDataProvider/TcaSelectItems.php index 1a29d46ca4788c8c97113041473ba443fa8d76d5..70522a4d26b3032585bc127347683d08ad4b4c4e 100644 --- a/typo3/sysext/backend/Classes/Form/FormDataProvider/TcaSelectItems.php +++ b/typo3/sysext/backend/Classes/Form/FormDataProvider/TcaSelectItems.php @@ -38,7 +38,7 @@ class TcaSelectItems extends AbstractItemProvider implements FormDataProviderInt } // Make sure we are only processing supported renderTypes - if (!in_array($fieldConfig['config']['renderType'], ['selectSingle', 'selectSingleBox', 'selectCheckBox', 'selectMultipleSideBySide'])) { + if ($this->isTargetRenderType($fieldConfig)) { continue; } @@ -80,4 +80,22 @@ class TcaSelectItems extends AbstractItemProvider implements FormDataProviderInt return $result; } + + /** + * Determines whether the current field is a valid target for this DataProvider + * + * @param array $fieldConfig + * @return bool + */ + protected function isTargetRenderType(array $fieldConfig) + { + if (!in_array( + $fieldConfig['config']['renderType'], + ['selectSingle', 'selectSingleBox', 'selectCheckBox', 'selectMultipleSideBySide'], + true + )) { + return true; + } + return false; + } } diff --git a/typo3/sysext/backend/Classes/Form/FormDataProvider/TcaSelectTreeItems.php b/typo3/sysext/backend/Classes/Form/FormDataProvider/TcaSelectTreeItems.php index ca1af2ee793f49916036e45c3ccade996df4b161..13c76afaba213734f82d7857a5af2de4f3ca1973 100644 --- a/typo3/sysext/backend/Classes/Form/FormDataProvider/TcaSelectTreeItems.php +++ b/typo3/sysext/backend/Classes/Form/FormDataProvider/TcaSelectTreeItems.php @@ -42,7 +42,7 @@ class TcaSelectTreeItems extends AbstractItemProvider implements FormDataProvide } // Make sure we are only processing supported renderTypes - if ($fieldConfig['config']['renderType'] !== 'selectTree') { + if ($this->isTargetRenderType($fieldConfig)) { continue; } @@ -186,4 +186,18 @@ class TcaSelectTreeItems extends AbstractItemProvider implements FormDataProvide return $selectedNodes; } + + /** + * Determines whether the current field is a valid target for this DataProvider + * + * @param array $fieldConfig + * @return bool + */ + protected function isTargetRenderType(array $fieldConfig) + { + if ($fieldConfig['config']['renderType'] !== 'selectTree') { + return true; + } + return false; + } }