Bug #19196
closed
Nested Tabs in FlexForms Sections are disfunctional
Added by Cyrille over 16 years ago.
Updated about 8 years ago.
Category:
FormEngine aka TCEforms
Description
When trying to put some tabs inside my flex form, I had trouble to first find a way to but then it appears to be bogus:
- Adding one section containing a tab is OK
- Adding a second one adds the tab header but not the content and clicking on the Tab button of the second item change the first item
- After saving, the page shows correctly the tabs
Other bug : the data is stored in the database but the values are not displayed in the FlexForm... I haven't tried yet to run the plugin to see if I could access it in front end
XML Code found by reverse engineering :
<section>1</section>
<type>array</type>
<tx_templavoila>
<title>Fields</title>
</tx_templavoila>
<el>
<input_renderlet_field>
<tx_templavoila>
<title>Renderlet Field</title>
</tx_templavoila>
<TCEforms>
<config>
<type>flex</type>
<ds_pointerField>list_type,CType</ds_pointerField>
<ds>
<default>FILE:EXT:edf_form_base/res/flexforms/sheets/fieldtypes/input/fieldinput.xml</default>
</ds>
</config>
</TCEforms>
</input_renderlet_field>
etc...
(issue imported from #M9128)
Files
After investigation of the SAVE BUG:
The data from the database is transcripted into an array and results as an array into the $PA['itemFormElValue'] while the method expects an xml flow. Hence, it is not parsed by the "t3lib_div::xml2array".
I patched it with a condition on the data nature (is_array())
TEMP PATCH, maybe the data should be in the correct form instead of this data check:
File: class.t3lib_tceforms.php
Method: getSingleField_typeFlex
Line: 2265
[CODE]
/** Nested Tabs Temporary patch by Cyrille Berliat 08.06.2008 /
if ( empty ( $PA['itemFormElValue'] ) ) {
$editData = array();
} else {
if ( is_array( $PA['itemFormElValue'] ) ) {
$editData = $PA['itemFormElValue'];
}else{
$xmlData = $PA['itemFormElValue'];
$xmlHeaderAttributes = t3lib_div::xmlGetHeaderAttribs($xmlData);
$storeInCharset = strtolower($xmlHeaderAttributes['encoding']);
if ($storeInCharset) {
$currentCharset=$GLOBALS['LANG']->charSet;
$xmlData = $GLOBALS['LANG']->csConvObj->conv($xmlData,$storeInCharset,$currentCharset,1);
}
$editData=t3lib_div::xml2array($xmlData);
}
}
/* End of Nested Tabs Temporary patch by Cyrille Berliat 08.06.2008 */
[/CODE]
!!! This does not fix the tab click bug, only the display of values !!!
Works better with this Flex: (upper version is bogus for toggling)
[CODE]
<section>1</section>
<type>array</type>
<tx_templavoila>
<title>Fields</title>
</tx_templavoila>
<el>
<input_renderlet_field>
<type>array</type>
<tx_templavoila>
<title>Renderlet Field</title>
</tx_templavoila>
<el>
<sheets>
<TCEforms>
<config>
<type>flex</type>
<ds_pointerField>list_type,CType</ds_pointerField>
<ds>
<default>FILE:EXT:edf_forms/res/flexforms/sheets/fieldtypes/input/fieldinput.xml</default>
</ds>
</config>
</TCEforms>
</sheets>
</el>
</input_renderlet_field>
</el>
[/CODE]
- Target version deleted (
0)
The Problem still exists in TYPO 4.5.5 but the patch does not work - is there a solution for that issue anywhere?
Values can be accessed from Plugins correctly:
$this->pi_getFFvalue($this->pi_getFFvalue($this->cObj->data['pi_flexform'], 'field_containing_other_flexform', 'sDEF'), 'field_in_inner_flexform', 'sDEF')
and they will be saved correctly indeed - but it isn't displayed right
And the Problem still exists in TYPO 6.2
- Description updated (diff)
- Category set to FormEngine aka TCEforms
- Status changed from New to Needs Feedback
- Is Regression set to No
This bug report is very old. Does this bug still occur in TYPO3 7 LTS and/or the master? And if so how can it be reproduced?
- Status changed from Needs Feedback to Closed
No feedback within the last 90 days => closing this issue.
If you think that this is the wrong decision or experience this issue again, then please write to the mailing list typo3.teams.bugs with issue number and an explanation or open a new ticket and add a relation to this ticket number.
Also available in: Atom
PDF