Feature #60026
openSet explicitly 'readOnly' sys_language_uid of child to value, taken from parent record
0%
Description
After fix of #57063 there is still a case, when record can get sys_language_uid=0.
Whenever 'sys_language_uid' field of child is marked as 'readOnly' in config section, child record again becomes saved with sys_language_uid=0.
This is a common behaviour, since there is no need to allow editors to change language of a localization.
DataMapper needs to set explicitly sys_language_uid to value, taken from parent record, if it doesn't appear in POST and is defined as 'languageField' in 'ctrl' section of TCA.
Technical notes.
If a field is marked as 'readOnly' it is rendered with 'disabled' attribute in HTML, and therefore it's value is not sent to the server. Therefore DataMapper sets sys_language_uid to 0, since nothing comes in POST-request.
Updated by Viktor Livakivskyi over 7 years ago
The same happens if sys_language_uid field is not shown at all - new record in non-default language will have it's sys_language_uid set to '0'.
TYPO3 8.7.1
Updated by Viktor Livakivskyi over 7 years ago
- Related to Bug #76048: IRRE: Child records - New record doesn't get language of parent (non localized records but using new button) added
Updated by Viktor Livakivskyi over 7 years ago
- Related to Bug #73609: Creating IRRE child element without language of parent element added
Updated by leon jänicke over 1 year ago
- Related to Epic #101557: Translation Handling Findings added