Questionable behaviour of l10n_mode "exclude" in list module
I'm currently in the process of upgrading a TYPO3 7.6.16 instance to 8.7.1.
If I configure a field as
return [ 'ctrl' => [ [...] 'label' => 'subject', [...] 'subject' => [ 'exclude' => 0, 'l10n_mode' => 'exclude', 'label' => 'LLL:EXT:calendar/Resources/Private/Language/locallang_db.xlf:tx_calendar_domain_model_event.subject', 'config' => [ 'type' => 'input', 'size' => 30, 'eval' => 'trim' , ],
I have to import the default languages subject in both languages during record-creation, for it to be displayed in the list-module, even if I don't want the subject to be editable in the backend.
If the translated records subject is empty in the database, shouldn't the default records label getting displayed for less BE-editor confusion?
#4 Updated by Mathias Schreiber 2 months ago
- Is Regression deleted (
Can you explain what you mean by "import records"?
The main issue here is that TYPO3s DataHandler will copy the values over from default to translated.
So if you create a translated record in the DB yourself, you need to get the value from its language parent yourself and add said value to the respective field.
#6 Updated by Oliver Hader 2 months ago
On using l10n_mode=exclude the values in localized records are only updated if the language default record (l10n_parent record) is updated.
I guess in this case the localized record is directly imported (without using the "localize" command in DataHandler). In this case, the accordings field "subject" is sanitized since it cannot be modified in localizations directly but is triggered when the language default records get updated.