Bug #82130
closedInline record for NEW tt_content element becomes sys_language_uid=-1
0%
Description
By creating a new tt_content element with included inline records, is not possible for FormInlineAjaxController to determine the current parent (tt_content-element) language. Therefore become all included inline records -1 as sys_language_uid.
For the previously saved tt_content elements woks the patch from Daniel Maier (https://review.typo3.org/#/c/53206/).
My recommendation is to adapt the DOM Object ID for InlineStackProcessor:
- Include the current parent language in the AJAX call and determine the right localizationMode in TcaInlineConfiguration::initializeLocalizationMode for this case not from $result['defaultLanguageRow'], but from this prepared parent language field (probably set in $formDataCompilerInputForParent).
- Extend the patch mentioned above: get the language directly from InlineStack (parent) data instead of DB record.
This issue is based on TYPO3 version 7.6.20. Not verified for other versions.
Files
Updated by Martin Horniak over 7 years ago
- Project changed from 9 to TYPO3 Core
- Category deleted (
Development) - TYPO3 Version set to 7
- Complexity set to medium
Updated by Martin Horniak over 7 years ago
- Category set to FormEngine aka TCEforms
Updated by Martin Horniak over 7 years ago
- File 2017-08-17_15-03-52.jpg 2017-08-17_15-03-52.jpg added
Updated by Christian Kuhn about 7 years ago
- Status changed from New to Needs Feedback
Is this still valid? The patch to cope with the language uid has been released with 7.6.22 and was not yet included in 7.6.20.
Updated by Martin Horniak about 7 years ago
Can I review the merge, which may fix this issue? I didn't found any change (7.6.20 -> 7.6.22) on review.typo3.org, which handles the language for new inline records in new content element. Thanks.
Updated by Riccardo De Contardi almost 7 years ago
Is it maybe: https://review.typo3.org/#/c/53206/ ?
Updated by Martin Horniak almost 7 years ago
Riccardo De Contardi wrote:
Is it maybe: https://review.typo3.org/#/c/53206/ ?
No, it's not: MathUtility::canBeInterpretedAsInteger($parent['uid']) can't become true on NEW<hash> ids and parent record is still not persisted at this time.
Updated by Alexander Opitz over 6 years ago
- Status changed from Needs Feedback to New
Updated by Oliver Bartsch about 4 years ago
- Status changed from New to Needs Feedback
Hi,
I have tested this but am not able to reproduce this bug anymore. There were a lot of changes regarding FormInlineAjaxController since then.
Could you please evaluate on current master if you are still able to reproduce the reported behaviour? If so please provide some more information how this is still reproducible for you (steps you did).
What I did:
1. Created new record type "inline_child"
2. Added new inline field to "tt_content" referencing "inline_child"
3. Created a new content element in L>0 and added an inline element prior to the first save
4. Saved the new content element
5. Inline record had correct language set
Updated by Oliver Bartsch almost 4 years ago
- Status changed from Needs Feedback to Closed
Hi, since this seems to be resolved in latests versions, I'll close this for now. If you feel there is still something not working, please let me know and I'll create a new issue or reopen this one.