Bug #54804
closedFlexform - Link Bug
0%
Description
Hi,
i configured a flexform element. Everything works fine, except for links.
<test> <TCEforms> <exclude>1</exclude> <label>Link</label> <config> <type>input</type> <eval>trim</eval> <size>60</size> <default></default> <wizards type="array"> <_PADDING type="integer">2</_PADDING> <link type="array"> <type>popup</type> <title>Link</title> <icon>link_popup.gif</icon> <script> browse_links.php?mode = wizard </script> <JSopenParams>height=500,width=500,status=0,menubar=0,scrollbars=1</JSopenParams> </link> </wizards> </config> </TCEforms> </test>
The field is displayed. When I click on the linkthe "pop-up" window apears with the message "Request-URI Too Large".
I thought at first this could be the error "http://forge.typo3.org/issues/34420".
I invested a little bit and found that the link contains a lot of "20%" signs.
http://netinventors.de/typo3/browse_links.php?mode=wizard&P[fieldConfig][type]=input&P[fieldConfig][eval]=trim&P[fieldConfig][size]=60&P[fieldConfig][default]=&P[fieldConfig][wizards][_PADDING]=2&P[fieldConfig][wizards][link][type]=popup&P[fieldConfig][wizards][link][title]=Link&P[fieldConfig][wizards][link][icon]=link_popup.gif&P[fieldConfig][wizards][link][script]=browse_links.php%3Fmode%3Dwizard&P[fieldConfig][wizards][link][JSopenParams]=height%3D500%2Cwidth%3D500%2Cstatus%3D0%2Cmenubar%3D0%2Cscrollbars%3D1&P[fieldConfig][form_type]=input&P[fieldConfig][ds][*,gridelements_pi1]=%3CT3DataStructure%3E%0A%20%20%20%20%3Cmeta%3E%0A%20%20%20%20%20%20%20%20%3ClangDisable%3E1%3C%2FlangDisable%3E%0A%20%20%20%20%3C%2Fmeta%3E%0A%20%20%20%20%3CROOT%20type%3D%22array%22%3E%0A%20%20%20%20%20%20%20%20%3Ctype%3Earray%3C%2Ftype%3E%0A%20%20%20%20%20%20%20%20%3Cel%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20 and so on
I've found that the complete flexform is transmitted in the link. Is this a wanted behavoir?
My workarround is to clean up the flexform xml file and write the hole file in one line.
Updated by Jo Hasenau almost 11 years ago
- Category set to 1367
- Priority changed from Must have to -- undefined --
This is a problem with the TYPO3 core method generating the forms, that we can not fix within Gridelements.
The core says in \TYPO3\CMS\Backend\Form\FormEngine::renderWizards
// Including the full fieldConfig from TCA may produce too long an URL if ($wid != 'RTE') { $params['fieldConfig'] = $fieldConfig; }
So any field except from RTE fields will get the problem, including the pi_flexform field.
Updated by Jo Hasenau almost 11 years ago
- Project changed from 2513 to TYPO3 Core
- Category deleted (
1367)
Updated by Mathias Schreiber almost 10 years ago
- Category set to FormEngine aka TCEforms
- Priority changed from -- undefined -- to Should have
- Target version changed from next-patchlevel to 7.4 (Backend)
- Is Regression set to No
Updated by Susanne Moog over 9 years ago
- Target version changed from 7.4 (Backend) to 7.5
Updated by Marc Bauer about 9 years ago
Hi I've found a working solution for these Bug:
\TYPO3\CMS\Backend\Form\Element\InputElement::render
Line 235-241:
if($fieldName == 'pi_flexform') { $paramObj = $parameterArray['fieldChangeFunc']['TBE_EDITOR_fieldChanged']; $rowId = $row['uid']; $searchMask = "/data\[tt_content\]\[$rowId\]\[pi_flexform]/"; $paramObjReplace = preg_replace($searchMask, $parameterArray['itemFormElName'], $paramObj); $parameterArray['fieldChangeFunc']['TBE_EDITOR_fieldChanged'] = $paramObjReplace; }
I know it isn't the best solution but it works!
Updated by Benni Mack about 9 years ago
- Target version changed from 7.5 to 7 LTS
Updated by Wouter Wolters about 9 years ago
- Status changed from New to Needs Feedback
Please retest this against current master if possible. fieldConfig is not part of the link anymore.
Updated by Alexander Opitz over 8 years ago
- Status changed from Needs Feedback to Closed
- Target version deleted (
7 LTS)
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.