[BUGFIX] Enable URLs with spaces in the RTE 16/47316/2
authorMarco Huber <mail@marco-huber.de>
Thu, 25 Feb 2016 15:04:54 +0000 (16:04 +0100)
committerJan Helke <typo3@helke.de>
Fri, 18 Mar 2016 10:47:21 +0000 (11:47 +0100)
To enable links with spaces and other special chars the service class to
build the correctly escaped <link> tag is used.

Resolves: #73675
Releases: master,7.6
Change-Id: I530cb7569372d2da12d0015e820b458c8299f435
Reviewed-on: https://review.typo3.org/47316
Reviewed-by: Jan Helke <typo3@helke.de>
Tested-by: Jan Helke <typo3@helke.de>
typo3/sysext/core/Classes/Html/RteHtmlParser.php

index 2846d90..45dc29c 100644 (file)
@@ -605,7 +605,8 @@ class RteHtmlParser extends \TYPO3\CMS\Core\Html\HtmlParser
                     } else {
                         $href = $info['url'] . ($info['query'] ? ',0,' . $info['query'] : '');
                     }
-                    $bTag = '<link ' . $href . ($attribArray['target'] ? ' ' . $attribArray['target'] : ($attribArray['class'] || $attribArray['title'] ? ' -' : '')) . ($attribArray['class'] ? ' ' . $attribArray['class'] : ($attribArray['title'] ? ' -' : '')) . ($attribArray['title'] ? ' ' . $attribArray['title'] : '') . '>';
+                    $typoLink = GeneralUtility::makeInstance(TypoLinkCodecService::class)->encode(array('url' => $href, 'target' => $attribArray['target'], 'class' => trim($attribArray['class'], '"'), 'title' => trim($attribArray['title'], '"'), 'additionalParams' => ''));
+                    $bTag = '<link ' . $typoLink . '>';
                     $eTag = '</link>';
                     // Modify parameters
                     if (isset($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_parsehtml_proc.php']['modifyParams_LinksDb_PostProc']) && is_array($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_parsehtml_proc.php']['modifyParams_LinksDb_PostProc'])) {