[BUGFIX] Properly handle flexform related exceptions 61/51061/5
authorAlexander Schnitzler <git@alexanderschnitzler.de>
Thu, 29 Dec 2016 14:24:15 +0000 (15:24 +0100)
committerSusanne Moog <susanne.moog@typo3.org>
Wed, 29 Nov 2017 19:12:22 +0000 (20:12 +0100)
commit7ee93637146d119eabd7797e9acfbc85e910c3cf
tree15040056b8dd8a40eb20076cdf3e3f652bdddd07
parent61a9cd355bb5640d6797f1fca300abee4317b4ae
[BUGFIX] Properly handle flexform related exceptions

The FlexFormTools class tries to resolve the datastructure
of flex fields by the given TCA configuration. The flexform
definition can either be set directly in the TCA or it is
fetched from another record.

Example:
TemplaVoil√† fetches the data structure from the table
tx_templavoila_datastructure.

When trying to resolve the data structure from another
table and the identifier is invalid (e.g. empty or does
not point to a valid record), several exceptions are
thrown that need to be caught at several points to keep
the user interface accessible.

Other than these mentioned exceptions there are ones
that indicate that the TCA configuration is simply wrong.
These ones are not caught and will still bubble up.

Releases: master, 8.7
Fixes: #79101
Change-Id: I9be921e1425076897a86ebb0b997a998fda7f373
Reviewed-on: https://review.typo3.org/51061
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
typo3/sysext/backend/Classes/Form/FormDataProvider/TcaFlexPrepare.php
typo3/sysext/core/Classes/Configuration/FlexForm/FlexFormTools.php
typo3/sysext/core/Classes/DataHandling/DataHandler.php