Bug #17653
closedPalettes are not rendered correctly on nesting records using the same table
0%
Description
I don't know what exactly makes this happen, but at least it is reproducible:
For some strange reason we needed to order news in a parent / child way. Nothing better than IRRE to do that:
- added two fields to tt_news, one for the "inline" type holding the children and one to hold the uid of the "parent" news
Now here comes the bug:
- Whenever there are children records in my tt_news record, the "keyword" pallete is empty! If "show secondary palettes" is enabled, I don't see the keywords at all (should be directly below bodytext). If I disable that option I get the icon for "secondary palette", but clicking on it gives me an empty palette.
To make it easier to test (go, Oliver, go!), I've made a little extension that just adds that inline fields needed to test this behaviour.
I also had some other "palette" related trouble in the course of our developement with this constelation (parent / child tt_news records), but this "keywords" thing is the only thing I could reproduce. Maybe fixing this fixes all related problems. :)
(issue imported from #M6456)
Files
Updated by Ernesto Baschny about 17 years ago
This bug is probably in best hands with you... ;)
Updated by Oliver Hader about 17 years ago
Ok, I'm going to have a look at this next week...
Updated by Oliver Hader about 17 years ago
I guess this also happens in TYPO3 4.1.3?
Updated by Oliver Hader about 17 years ago
The error related to this array in TCEforms:
$this->palettesRendered[$this->renderDepth][$table]=array();
Palettes are there marked as rendered - but if there are child records they set this array and the parent record thinks that all these palettes have been rendered.
I don't know if some other extension needs this information after t3lib_TCEforms::getMainFields() has been processed - if not, I'd just add
$this->palettesRendered[$this->renderDepth][$table]=array();
to the end of the mentioned method.
Updated by Oliver Hader about 17 years ago
Please see the attached patch which solves this bug.
It adds a new method to t3lib_TCEforms_inline which is used as wrapper for t3lib_TCEforms::getMainFields(). The information about rendered palettes is stored and written back after the inline processing was finished.
Updated by Oliver Hader about 17 years ago
- TYPO3_4-1 (rev. 2671)
- Trunk (rev. 2672)