Project

General

Profile

Actions

Feature #17247

closed

Load Inline Elements On Demand

Added by Jo Hasenau about 17 years ago. Updated about 13 years ago.

Status:
Closed
Priority:
Should have
Assignee:
Category:
-
Target version:
-
Start date:
2007-04-26
Due date:
% Done:

0%

Estimated time:
PHP Version:
4.3
Tags:
Complexity:
Sprint Focus:

Description

While editing records based on IRRE the current behaviour is to load all elements at once even though the tabs containing the elements are closed.

It would be a great performance boost to load the content of each single element only when necessary, which means: Only if the element tab is activated or if the element contains form elements that are required for processing while saving the element back to the DB.

(issue imported from #M5500)


Files

bug5500.diff (10.8 KB) bug5500.diff Administrator Admin, 2010-01-11 16:44
bug5500_configurable.diff (10.9 KB) bug5500_configurable.diff Administrator Admin, 2010-01-12 14:28
bug5500_20100221.diff (11.6 KB) bug5500_20100221.diff Administrator Admin, 2010-02-21 22:26

Related issues 5 (1 open4 closed)

Related to TYPO3 Core - Bug #17254: Multiple retrieval of all table rowsClosed2007-04-27

Actions
Related to TYPO3 Core - Bug #17119: RTE in child elements overwrites field in parent elementClosedOliver Hader2007-05-03

Actions
Related to TYPO3 Core - Bug #18368: Many Relations will cause performance problemsClosed2008-03-04

Actions
Related to TYPO3 Core - Feature #65505: Add paging for IRRE-records (working with many IRRE-entries)New2015-03-04

Actions
Has duplicate TYPO3 Core - Bug #19581: IRRE loading extremely slow in Internet Explorer and leads to crashClosedOliver Hader2008-11-06

Actions
Actions #1

Updated by Oliver Hader almost 17 years ago

Just added a relation to bug #17119 because on fetching child data on demand and if there are RTE instances affected, the mentioned bug has to be fixed first.

Actions #2

Updated by Harald Glaser over 15 years ago

I had the same problem - extremly slow loading of the edit form of my records (up to 50 seconds!). So I xclassed "t3lib_tceforms_inline" to do exactly what ist suggested above - loading all collapsed records dynamically only when they are expanded.

I just added the extension "cm_irre" to TER - should be available in the next hours. Feel free to try it out, feedback is welcomed.

Actions #3

Updated by Vladimir Podkovanov about 15 years ago

+1 for the feature

Actions #4

Updated by Vladimir Podkovanov almost 15 years ago

Hi Harald,
would you like to make a patch to the core with such feature, maybe to add config key (appearance.ajaxLoad = 1) to inline type to triger such load. Also would be nice to add ajax loading gif like http://www.ajaxload.info/

Actions #5

Updated by Andreas Wolf almost 15 years ago

I'll try to incorporate this with the new TCEforms.

Actions #6

Updated by Martin Borer almost 15 years ago

+1 would be a great feature!

Actions #7

Updated by Alexander Stehlik over 14 years ago

+1 would love this feature.

I tried the cm_irre extension but it does not work :( The form loads much faster but when I try to unfold an inline record I get a Javascript error ($(objectId + "_fields") is null, jsfunc.inline.js (Zeile 31)). Mabe this is because the naming of the elements changed due to bug #0012152.

Actions #8

Updated by Vladimir Podkovanov over 14 years ago

I can confirm that extension does't work on trunk any more.
IMHO this extension should be integrated in core and AJAX loading with IRRE should work by default, it is only way to use IRRE when number of inline records getting big or when inline records are heavy (many fields, subsequent IRRE records etc).

Actions #9

Updated by Harald Glaser over 14 years ago

As the cm_irre extension no longer works with Typo3 4.3+, I packed the functionality into a patch.
Please try the file attached to this tread - feedback is welcomed.

Actions #10

Updated by Harald Glaser over 14 years ago

I just added the above suggested feature to make the ajax-based loading configurable, new patch file is bug5500_configurable.diff

Ajax-loading is ON by default, to disable it for a specific item you can now use appearance.ajaxLoad = 0 in TCA.

Actions #11

Updated by Alexander Stehlik over 14 years ago

Thanks for the patch Harald! It seem to work quite good but I have one issue with the expandSinge configuration.

When I expand a second inline element, the first one doesn't get collapsed. When I click on the first one twice, the second one collapses as the first one expands.

At some point, the whole system doesn't work any more. When I click on an element, that wasn't opened before, nothing happens (not even a javascript error).

Tested with Firefox 3.57 in Ubuntu Karmic (9.10)

Actions #12

Updated by Vladimir Podkovanov over 14 years ago

Hi Harald, thanks for the patch. It works well except IRRE records with tabs - they do not expand, though AJAX data being properly transffered (checked by sniffing traffic) and no JS errors. I checked in FF 3.0.17

Actions #13

Updated by Harald Glaser about 14 years ago

Hi & thanks for your feedback.
I'm sorry that I didn't find time to correct the patch earlier...

Attached is an updated version. The following problems should be solved:
- loading of IRRE items with tabs
- corrected expandSingle behaviour
- added loading-indicator icon
- changed hardcoded typo3/ to TYPO3_mainDir

Actions #14

Updated by Alexander Stehlik about 14 years ago

Hi Harald,
thank you very much for the new patch. I tested the new expandSingle behaviour and it seems to work like a charm :)

Actions #15

Updated by Vladimir Podkovanov about 14 years ago

Hi Harald,
I had issue with IRRE elements where expandSingle was not set. I did correct that and uploaded patch in core list in your RFC thread.

Actions #16

Updated by Susanne Moog about 13 years ago

  • Target version deleted (4.4.0)
Actions #17

Updated by Tymoteusz Motylewski about 6 years ago

  • Related to Feature #65505: Add paging for IRRE-records (working with many IRRE-entries) added
Actions

Also available in: Atom PDF