[BUGFIX] FormEngine: returnUrl handling in inline 44/54544/2
authorChristian Kuhn <lolli@schwarzbu.ch>
Fri, 3 Nov 2017 11:42:09 +0000 (12:42 +0100)
committerSusanne Moog <susanne.moog@typo3.org>
Fri, 3 Nov 2017 14:40:13 +0000 (15:40 +0100)
commita3fcf6d6daa9072e6eb212b46e3d92d53137706f
tree74e0fee7076ea7cdf653835d8e398cd6f195e706
parentf4eb582964c329e4c2c0142eee2a957c27e36872
[BUGFIX] FormEngine: returnUrl handling in inline

If an inline child, opened via ajax request, generates links leaving
the current records and opening a different one, on closing that
record the returnUrl is wrong and points to the url of the inline
ajax request.
The original return url of the main record is lost in the compile chain.
The returnUrl data provider sets $data['returnUrl'] to current url if not
otherwise given.
The patch hands over the original return url to the inline ajax controller
and lets it 'sink down' in the data compile chain to inline children so
the original return url is available when container or elements generate urls.
Additionally some broken 'returnURL' handling in InlineRecordContainer
and jsfunc.inline.js is cleaned up and removed.

Change-Id: Ia47dc8cee068fc9c4d1c5e16c1960b1a58fcb2f5
Resolves: #82525
Releases: master, 8.7
Reviewed-on: https://review.typo3.org/54544
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
typo3/sysext/backend/Classes/Controller/FormInlineAjaxController.php
typo3/sysext/backend/Classes/Form/Container/InlineControlContainer.php
typo3/sysext/backend/Classes/Form/Container/InlineRecordContainer.php
typo3/sysext/backend/Classes/Form/FormDataProvider/TcaInline.php
typo3/sysext/backend/Resources/Public/JavaScript/jsfunc.inline.js