Actions
Bug #97662
openWhen removing translated page from the recycler, deletion goes too far and hard delete content elements related to the default language page
Status:
New
Priority:
Should have
Assignee:
-
Category:
DataHandler aka TCEmain
Target version:
-
Start date:
2022-05-19
Due date:
% Done:
0%
Estimated time:
TYPO3 Version:
11
PHP Version:
5.3
Tags:
Complexity:
medium
Is Regression:
Sprint Focus:
On Location Sprint
Description
As said in the title, one of our client filled a bug report claiming some content elements were lost while deleting records using the Recycler. We checked the code and found out a way to reproduce this bug with v10.4.27 and v11.5.10.
Here is how to reproduce:
- Using a site with multiple languages configured
- Default: English
- Secondary: French
- Create a new page using the default language (ie: English)
- Create a text content element in it (or any type of content element)
- Create a new translation to this page --> French
- Create a new text element for the translation
- Test that both languages works fine
- Delete the translation, not the content element, to return with only the default language (deleting the french version)
- At this point, using the Recycle module, we can see the deleted french translation page
- Going back in the Page module, create a new translation of that same page in French again
- Add content elements to this new French translation
- Using the Recycler module, permanently delete the first (deleted) translation page
- When going back to the page module, on the original page, we can witness the latest french content elements are deleted permanently
By tracking every steps of the Recycler, from the delete button to the function TYPO3\CMS\Core\DataHandling\DataHandler\deleteSpecificPage()
it became obvious that, when the page deletion occures, the function getDefaultLanguagePageId()
will return the value of l10n_parent field and will directly link any tt_content using the uid of the default language page.
Actions