Task #69715
closedStory #69712: Further FormEngine development
Flex: Better encapsulation
100%
Description
getFlexIdentifier() of TcaFlex.php calculates the "pointer" that determines which defined data structure should be chosen.
The implementation is only sparse, documented stuff ( https://docs.typo3.org/typo3cms/TCAReference/Reference/Columns/Flex/Index.html ) like ds_pointerfield_searchparent is not handled.
getFlexFormDS() currently does two things: The pointer calculation and then fetching and parsing the structure. This should be split and unit tested put to FlexFormTools of ext:core (the only non-static class we have that handles flex form related stuff). Unsure about the error handling that is also happening - maybe better throw exceptions. Also the hint from resolvePossibleExternalFile() of TcaFlex should be taken into account and merged to the parser method.
There is a second (similar) method in BackendUtility::getRegisteredFlexForms that has a slightly different scope, though. The second one is used by the SelectItem data provider of flex forms, iirc.
In the end, the following methods should be deprecated and substituted by unit tested code within FlexFormTools that is split into sane capsules:
BackendUtility::getRegisteredFlexForms()
BackendUtility::getFlexFormDS
GeneralUtility::resolveSheetDefInDS()
GeneralUtility::resolveAllSheetsInDS()
It might be required to split this issue here into multiple smaller issues.
Updated by Christian Kuhn about 9 years ago
- Target version set to 7.5
- Complexity set to hard
- Sprint Focus set to On Location Sprint
Updated by Anja Leichsenring about 9 years ago
- Sprint Focus changed from On Location Sprint to Stabilization Sprint
Updated by Benni Mack about 9 years ago
- Target version changed from 7.5 to 7 LTS
Updated by Christian Kuhn almost 8 years ago
partially solved with #78581 but not yet rolled out to formEngine completely.
Updated by Gerrit Code Review almost 8 years ago
- Status changed from New to Under Review
Patch set 40 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/50879
Updated by Gerrit Code Review almost 8 years ago
Patch set 41 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/50879
Updated by Gerrit Code Review almost 8 years ago
Patch set 42 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/50879
Updated by Gerrit Code Review almost 8 years ago
Patch set 43 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/50879
Updated by Gerrit Code Review almost 8 years ago
Patch set 44 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/50879
Updated by Gerrit Code Review almost 8 years ago
Patch set 45 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/50879
Updated by Gerrit Code Review almost 8 years ago
Patch set 46 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/50879
Updated by Gerrit Code Review almost 8 years ago
Patch set 47 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/50879
Updated by Gerrit Code Review almost 8 years ago
Patch set 48 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/50879
Updated by Christian Kuhn almost 8 years ago
- Status changed from Under Review to Resolved
- % Done changed from 0 to 100
Applied in changeset 38a1bc5dd7990b63e45c0419065cd02fe91187e9.
Updated by Riccardo De Contardi about 7 years ago
- Status changed from Resolved to Closed