Bug #89369

Page translations faulty when editor has no permissions for "l10n_parent"

Added by Christian Eßl 11 days ago.

Status:
New
Priority:
Should have
Assignee:
-
Category:
DataHandler aka TCEmain
Target version:
-
Start date:
2019-10-08
Due date:
% Done:

0%

TYPO3 Version:
9
PHP Version:
Tags:
Complexity:
Is Regression:
Sprint Focus:

Description

How to reproduce:
  • Create a site with the languages "Default" and "German"
  • Create a page "Test" as admin in the default language.
  • Create a backend user that is allowed to view and modify pages
  • Do not give the user access permissions to the field "l10n_parent"
  • Login as the backend user and try to translate the page

Expected result:
Page is translated

Actual Result:
  • A blank page is shown, the pagetree now infinitely shows the loading spinner
  • If you try to translate the same page again, an error message is shown:
    '"1: Localization failed: there already are localizations (5572) for language 20 of the "pages" record 885!"'

But the page translation is not visible in the list view. If you look into the db, the translation was inserted with the uid 5572, but l10n_parent is now 0, which should be the uid of the parent record.
This means, Datahandler is highly dependent on the backend users access permission to the l10n_parent field. If no permissions to this field exist, the newly created translation will be faulty.

I believe one of the following should happen to avoid this:
  1. Do not allow translating a page if the backend user has no permissions for the field l10n_parent
  2. Or make the Datahandler not care about the access permissions to l10n_parent when translating a page.

Also available in: Atom PDF