Bug #59799

showPossibleLocalizationRecords does not work if parent language is not allowed for current BE-User

Added by David Greiner about 5 years ago. Updated about 3 years ago.

Status:
New
Priority:
Should have
Assignee:
-
Category:
FormEngine aka TCEforms
Target version:
-
Start date:
2014-06-23
Due date:
% Done:

0%

TYPO3 Version:
6.2
PHP Version:
5.3
Tags:
Complexity:
Is Regression:
No
Sprint Focus:

Description

Hi!

It seems that showPossibleLocalizationRecords does not work if currently logged-in BE-User does not have access to the language he tries to translate from.

For example:

- create a News-Element (tx_news) with a media element in default language
- switch to a non-admin user which does not have the default language in his "(user or group-)allowed languages" settings
- now, localization is possible by clicking "localize all records" but the possible localization are not shown before do the localization

This is not very usable for editors. Mostly they will not click this button without any preview of possible localizations.

I've tried but was unable to find the corresponding code in ./typo3_src/typo3/sysext/backend/Classes/Form/Element/InlineElement.php

Kind regards, David.

History

#1 Updated by Andreas Allacher almost 5 years ago

I have the same issue.
The problem seems to be that in "public function renderForeignRecord($parentUid, $rec, $config = array()) {"

There is the check "if (!$this->checkAccess(($isNewRecord ? 'new' : 'edit'), $foreign_table, $rec['uid'])) {"

However, this is also done for virtual records which, of course, will fail if one has no access to default language.
If the record is virtual, it should be enough if we have read access instead "if ($GLOBALS['BE_USER']->check('tables_select', $table)) {"

#2 Updated by Andreas Allacher about 3 years ago

This issue still exists with 7.6

Also available in: Atom PDF