Project

General

Profile

Actions

Bug #81891

closed

Flexform: renderType => selectTree not loading

Added by Arun Chandran over 6 years ago. Updated over 5 years ago.

Status:
Closed
Priority:
Must have
Assignee:
-
Category:
Performance
Target version:
Start date:
2017-07-17
Due date:
% Done:

100%

Estimated time:
TYPO3 Version:
8
PHP Version:
Tags:
Complexity:
Is Regression:
Sprint Focus:

Description

Hi,

In TYPO3 8.7 LTS, we are facing an issue with "selectTree" render type in TCA/Flexforms. Seems like the issue with low internet connections. Can't see any errors in the debug console. If reload the TCA again and again, sometimes the tree displayed. Please see the attached screen.

Thank you.


Files

TCA_PageTree.png (23.4 KB) TCA_PageTree.png Arun Chandran, 2017-07-17 08:05
Actions #1

Updated by Arun Chandran over 6 years ago

Any update for this issue? It still exists.

Thank you.

Actions #2

Updated by Stefan Berger over 6 years ago

  • Subject changed from renderType => selectTree not loading to Flexform: renderType => selectTree not loading
  • Priority changed from Should have to Must have

I could confirm this bug, but I don't think it's related with low internet connections.

I've also done some debuggings, which shows that the value $result['selectTreeCompileItems'] in
\TYPO3\CMS\Backend\Form\FormDataProvider\TcaSelectTreeItems::addData is false for those tree flexform fields, so no database requests are done in that tree fetchData ajax request. But toggling that flag manually doesn’t solve the bug. So it seems that there are some other reasons, which explains that false behavior.

Thank you for further investigations.

Actions #3

Updated by Anke Altintop over 6 years ago

I could reliable simulate this with throttling the internet connection. I tracked it down to /typo3/sysext/backend/Resources/Public/JavaScript/FormEngine/Element/SelectTreeElement.js where $('.typo3-tceforms-tree .treeRecord').each(function (i, element) doesn't get executed, when $('.typo3-tceforms-tree .treeRecord') isn't loaded quick enough, which means the SelectTree isn't initialized.

So I wrapped it into a document.ready statement. I don't know if that is the best way to do it, but it solved the problem:

$(document).ready(function() {
$('.typo3-tceforms-tree .treeRecord').each(function (i, element) {
....
});

Actions #4

Updated by Gerrit Code Review over 6 years ago

  • Status changed from New to Under Review

Patch set 1 for branch TYPO3_8-7 of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/54177

Actions #5

Updated by Riccardo De Contardi over 6 years ago

  • Category set to Performance
Actions #6

Updated by Gerrit Code Review over 6 years ago

Patch set 1 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/54310

Actions #7

Updated by Gerrit Code Review over 6 years ago

Patch set 2 for branch TYPO3_8-7 of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/54177

Actions #8

Updated by Anke Altintop over 6 years ago

  • Status changed from Under Review to Resolved
  • % Done changed from 0 to 100
Actions #9

Updated by Benni Mack over 5 years ago

  • Status changed from Resolved to Closed
Actions

Also available in: Atom PDF