Skip to content
Snippets Groups Projects
Commit dbd9dd2d authored by Manuel Selbach's avatar Manuel Selbach Committed by Christian Kuhn
Browse files

[BUGFIX] Make it possible to translate selectMultipleSideBySide

For the default language it was possible to view the field, but on
translating the dataset, the following exception is thrown:
'PHP Warning: Invalid argument supplied for foreach() in
backend/Classes/Form/Element/SelectMultipleSideBySideElement.php line 66'

As the defaultLanguageRow keeps to be "unparsed", the $selectedItems
could be a comma separated string within the method
TYPO3\CMS\Backend\Form\Element\SelectMultipleSideBySideElement::renderReadOnly
if the TCA configuration of a field is set to 'defaultAsReadonly'.

Resolves: #77155
Releases: master, 8.7, 7.6
Change-Id: Id9380fe3761e683352166565ed1a7e56f5e64190
Reviewed-on: https://review.typo3.org/55607


Reviewed-by: default avatarBenni Mack <benni@typo3.org>
Tested-by: default avatarTYPO3com <no-reply@typo3.com>
Reviewed-by: default avatarManuel Selbach <manuel_selbach@yahoo.de>
Tested-by: default avatarManuel Selbach <manuel_selbach@yahoo.de>
Reviewed-by: default avatarTobi Kretschmann <tobi@tobishome.de>
Tested-by: default avatarTobi Kretschmann <tobi@tobishome.de>
Reviewed-by: default avatarChristian Kuhn <lolli@schwarzbu.ch>
Tested-by: default avatarChristian Kuhn <lolli@schwarzbu.ch>
parent e44f009a
Branches
Tags
No related merge requests found
......@@ -17,6 +17,7 @@ namespace TYPO3\CMS\Backend\Form\Element;
use TYPO3\CMS\Core\Authentication\BackendUserAuthentication;
use TYPO3\CMS\Core\Imaging\Icon;
use TYPO3\CMS\Core\Localization\LanguageService;
use TYPO3\CMS\Core\Utility\GeneralUtility;
use TYPO3\CMS\Core\Utility\MathUtility;
use TYPO3\CMS\Core\Utility\StringUtility;
......@@ -331,6 +332,9 @@ class SelectMultipleSideBySideElement extends AbstractFormElement
$possibleItems = $config['items'];
$selectedItems = $parameterArray['itemFormElValue'] ?: [];
if (!is_array($selectedItems)) {
$selectedItems = GeneralUtility::trimExplode(',', $selectedItems, true);
}
$selectedItemsCount = count($selectedItems);
$autoSizeMax = MathUtility::forceIntegerInRange($config['autoSizeMax'], 0);
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment