Removing child records in a workspace does not work
The following issues on removing IRRE child records in a workspace(!) have been identified:
1) Removing children in TCEforms
+ Child A
+ Child A.A
+ Child A.B
+ Child B
On removing the branch of "Child A" (including both sub-children), the
"Child A" as well as the sub-children "A.A" and "A.B" do not appear in
the workspace module as removed or modified.
2) Removing children in the list view
(same structure as shown at the first point)
On again removing the branch of "Child A", the "Child A" is shown as
removed, but the sub-children "A.A" and "A.B" are shown with regular
modifications, but not as deleted.
3) Reverting changes in the workspace module
Now imagine the the top-parent "Parent" gets removed and this change to
the "Parent" will be reverted in the workspace module. Then this should
automatically also affect all children.
(issue imported from #M17981)
Updated by Oliver Hader about 10 years ago
- submit "data" parameters of the visible elements and "cmd" parameters of the deleted child record to TCEmain
- process_datamap is called before process_cmdmap (thus, removing happens later)
- process_datamap then will create a new version of the child record
- process_cmdmap will remove the created version of the previous step, but thus won't create the delete placeholder
To cirumvent this and the nested TCEmain objects inside TCEmain, I needed a way to keep the information about elements that will be deleted to skip them.
It might be difficult to introduce this to TYPO3 4.5 - however something like this is required here and I did not want to start with anonymous objects or a new $GLOBAL array...