[TASK] Rework pseudo-site backend preview url generation 82/58182/5
authorBenjamin Franzke <bfr@qbus.de>
Tue, 4 Sep 2018 09:25:43 +0000 (11:25 +0200)
committerAnja Leichsenring <aleichsenring@ab-softlab.de>
Fri, 7 Sep 2018 19:03:37 +0000 (21:03 +0200)
commit62d2f9a3abf71eab8456ab243d6c336632f07aee
treedd8601788796d56b9f8ab566edcbdb52fafb5a64
parent2fbbda3dd5126c41ee3ffd05922df1efa8f7939b
[TASK] Rework pseudo-site backend preview url generation

When there is no site configuration, no TCEMAN.preview
configuration and no sys_domain record available, the host
URL needs to be derived from TYPO3_SITE_URL.

This recently broke (and was fixed). Due to wrong logic
the protocol was added twice, resulting in URLs like:

http://http://hostname.tld/

It initially broke due to the site handling features, probably
with https://review.typo3.org/57949
A condition became dead, due to $domain being always set,
when it was null before that change (if a sys_domain record
could not be found).

The bug was fixed by adding an additional condition (without
removing the dead "else" condition) in https://review.typo3.org/c/58177/

This patch tries to clean this up by removing the new condition
(introduced in #58177) and rather restructure the code.

To circumvent those bugs and to avoid confusion what $domain
actually refers to (now always including the protocol) the
code is refactored to not re-assign $domain over and over again.

Change-Id: I155db1b91357bb6345da1ef469d32b0125344b16
Releases: master
Resolves: #86140
Reviewed-on: https://review.typo3.org/58182
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
typo3/sysext/backend/Classes/Utility/BackendUtility.php