Bug #44617
You can not expand newly created, collapsed IRRE records which have a RTE field
Status: | Resolved | Start date: | 2013-01-17 | |
---|---|---|---|---|
Priority: | Must have | Due date: | ||
Assigned To: | Stanislas Rolland | % Done: | 0% |
|
Category: | IRRE | Spent time: | - | |
Target version: | 6.0.5 | |||
TYPO3 Version: | 6.0 | Is Regression: | ||
PHP Version: | 5.3 | Sprint Focus: | ||
Complexity: |
Description
Scenario which produces the bug:
- IRRE
- "collapseAll" => 1 (TCA-appearance-setting) for the child IRRE record
- at least one RTE text field in the child record
This scenatio leads to the following bug: You can not expand newly created, collapsed records.
After clicking the save button you will be able to expand formerly created, collapsed records.
I guess there is some bad javascript interaction/collision between the RTE javascript and the list module/IRRE javascript.
Related issues
History
#1 Updated by Roland Waldner over 2 years ago
Tested in Chrome & Firefox 17.
#2 Updated by Roland over 2 years ago
- Target version changed from 6.0.1 to 6.0.2
#3 Updated by Michael Staatz over 2 years ago
This can also reproduced with the introductionpackage-6.0.2, 6.0.3, 6.0.4 and with the currend branch of the core from Git.
Tested it with news 1.4.0 and 2.0.0
Enable the "Use content element relation" and try to add an content element to an news.
Then you are in the same situation as describe above.
If you change the TCA - Setting to
'collapseAll' => 0
the it worked in my case.
best,
michael
#4 Updated by Georg Ringer over 2 years ago
confirmed in 6.1
#5 Updated by Witali Rott about 2 years ago
The Problem is, that the htmlarea.js is not in DOM when the Plugins are loaded.
Possibly t3lib/jsfunc.inline.js must be optimized. With Priority for MUST BE loaded Files
OR
Make the Plugins in one File with HTMLArea
OR
Always load RTE in BE
#6 Updated by Stanislas Rolland about 2 years ago
Something changed in jsfunc.inline.js? Wonder when this got broken...
#7 Updated by Stanislas Rolland about 2 years ago
Witali Rott wrote:
The Problem is, that the htmlarea.js is not in DOM when the Plugins are loaded.
Possibly t3lib/jsfunc.inline.js must be optimized. With Priority for MUST BE loaded Files
OR
Make the Plugins in one File with HTMLArea
OR
Always load RTE in BE
How do you come to this conclusion?
I tried the test extension attached to this issue.
When Create new is hit, the element is created and the RTE initialized. I do not see any error being raised at this stage. But then the expand action does not work...
#8 Updated by Stanislas Rolland about 2 years ago
I think this was broken by http://forge.typo3.org/projects/typo3v4-core/repository/revisions/392f47b34a5559f2e50794369afbc4d60e840cbe
The RTE cannot be correctly sized when initialized inside a block hidden with display style property set to none. In Firefox, designMode or contentEditable cannot be set when in this same context.
Therefore the RTE needs to know its containing blocks that may become hidden, and also have events set on changes to this state. In TYPO3, this is provided by the nestedElements array.
With IRRE inline elements, the containing div used to be hidden by setting the style display property. This was changed by the revision cited above. The containing div gets hidden by setting a class on its parent. Moreover, this parent block is not part of the nestedElements array.
#9 Updated by Stanislas Rolland about 2 years ago
Please test this change: https://review.typo3.org/#/c/20871/
#10 Updated by Nicolas Forgeot about 2 years ago
It's work on 6.1.0 :) thx
#11 Updated by Stanislas Rolland about 2 years ago
Nicolas Forgeot wrote:
It's work on 6.1.0 :) thx
Thanks for testing!
#12 Updated by Stanislas Rolland about 2 years ago
- Status changed from New to Resolved
- Assigned To set to Stanislas Rolland
- Target version changed from 6.0.2 to 6.0.5