Actions
Bug #102345
openCopy/Move pages with existing translation into another site with different language setup results in orphaned problematic page translation records
Status:
Under Review
Priority:
Must have
Assignee:
-
Category:
Localization
Target version:
-
Start date:
2023-11-07
Due date:
% Done:
0%
Estimated time:
TYPO3 Version:
12
PHP Version:
Tags:
Complexity:
hard
Is Regression:
Sprint Focus:
Description
Problem/Description¶
I've also created a video where I try to explain the thematic right in a TYPO3 12.4 backend: https://www.youtube.com/watch?v=Yf2bZWpPW6c
Steps to reproduce¶
- set up a TYPO3 instance with 2 TYPO3 site configs with different language setup
- site a: default:en (0) + translation:de (1)
- site b: default:de (0) + translation:en (2)
- Create a subpage in site a and add a translation
- Copy the created subpage into site b
- The translated page translation is now "somehow" orphaned as you can only reach it (in TYPO3 12) via the Backend Live Search component (e.g. via
#page:uidOfTranslation
or the title)
Resulting problems¶
- the editor does not know what's going on
- the editor maybe thinks, that TYPO3 is dumb due to the fact, that the copied records are not changed (default to translation and vice-versa)
- or the editor get's not stopped by TYPO3 while trying to copy/move a record to another TYPO3 site with a different language setup
- there are scenarios if there are relations like FAL and/or CEs which results in datalost if the orphaned translation get's deleted via the TYPO3 backend AKA DataHandler
- we also had wrong/problematic speaking urls / slugs. (but this is something I did not investigated when the problem occurs a year ago)
Notes¶
- in our scenario the problem seems to be occured in TYPO3 9 or 10 when an editor copied a subpagetree from one site to another site. In our scenario, those orphaned page translation records where easily findable via
SELECT uid, pid, sys_language_uid, l10n_source, l10n_parent, slug, title, hidden,cruser_id, deleted FROM pages WHERE deleted = 0 AND l10n_parent != l10n_source;
- in 2022, @Benni Mack had also the same scenario in his real life projects in B13
- we try to disable copying/moving from one site to another site in this project with hooking into the DataHandler (I will add the workaround code when done/finished)
ToDo(s)¶
IDK so far. But I've tried to show/describe it in my video (linked in the issue description up):
- stop copy/move from one site to another site via DataHandler when die language setup is not the same betwwen sites
- add a modal with a wizard where the editor have the possibilities to decide what to do
- or introduce a completely new way of copying empty structures. e.g. one wants to copy just the skeleton of a page with empty elements but with correct settings for backendLayout and so... (you see: beLayout can also be differently configured in another site, so one might say just stop copying from site to site :-) )
Acceptance Criteria¶
- prohibit problematic copy/move or improve this as a feature in the TYPO3 core (TBD)
- document the actual problem until it get's fixed (or not fixed)
Related external links¶
- somehow related as it's actually possible to create translation duplicates for records other then page records:
Files
Actions