[BUGFIX] Allow t3:// syntax to be parsed by lib.parseFunc 00/51000/5
authorBenni Mack <benni@typo3.org>
Mon, 19 Dec 2016 20:36:21 +0000 (21:36 +0100)
committerAndreas Fernandez <typo3@scripting-base.de>
Tue, 20 Dec 2016 10:04:25 +0000 (11:04 +0100)
When introducing the new t3:// linking syntax for typolink,
we also allowed to use them in the RTE without using <link>
anymore, which is really cool. However, the frontend (= TypoScript)
cannot deal with that yet.

A clean function within parseFunc should "transformLinks" with typolink.
For the time being, a parseFunc.tags.A is introduced to allow
the transformations to be rendered correctly.

It *could* have a side-effect that certain attributes
within parseFunc.tags.A are rendered twice, but can be solved
at a later point by sanitizing the attributes quite simple.

Resolves: #79041
Releases: master
Change-Id: Ib8da2a88b67a633fc89a5c1ddee90c8e14f5b27b
Reviewed-on: https://review.typo3.org/51000
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Andreas Fernandez <typo3@scripting-base.de>
Tested-by: Andreas Fernandez <typo3@scripting-base.de>
typo3/sysext/css_styled_content/Configuration/TypoScript/v7/setup.txt
typo3/sysext/css_styled_content/static/setup.txt
typo3/sysext/fluid_styled_content/Configuration/TypoScript/Static/Setup/lib.parseFunc.ts

index c1274aa..a6948b2 100644 (file)
@@ -84,6 +84,18 @@ lib.parseFunc {
                        typolink.target.override = {$styles.content.links.target}
                        parseFunc.constants =1
                }
+               a = TEXT
+               a {
+                       current = 1
+                       typolink {
+                               parameter.data = parameters:href
+                               title.data = parameters:title
+                               aTagParams.data = parameters:allParams
+                               target.data = parameters:target
+                               extTarget = {$styles.content.links.extTarget}
+                               extTarget.override.data = parameters:target
+                       }
+               }
        }
        allowTags = {$styles.content.links.allowTags}
        denyTags = *
index 0425412..e02e81b 100644 (file)
@@ -84,6 +84,18 @@ lib.parseFunc {
                        typolink.target.override = {$styles.content.links.target}
                        parseFunc.constants =1
                }
+               a = TEXT
+               a {
+                       current = 1
+                       typolink {
+                               parameter.data = parameters:href
+                               title.data = parameters:title
+                               aTagParams.data = parameters:allParams
+                               target.data = parameters:target
+                               extTarget = {$styles.content.links.extTarget}
+                               extTarget.override.data = parameters:target
+                       }
+               }
        }
        allowTags = {$styles.content.links.allowTags}
        denyTags = *
index 3f776c8..9f85276 100644 (file)
@@ -20,6 +20,18 @@ lib.parseFunc {
                        }
                        parseFunc.constants = 1
                }
+               a = TEXT
+               a {
+                       current = 1
+                       typolink {
+                               parameter.data = parameters:href
+                               title.data = parameters:title
+                               aTagParams.data = parameters:allParams
+                               target.data = parameters:target
+                               extTarget = {$styles.content.links.extTarget}
+                               extTarget.override.data = parameters:target
+                       }
+               }
        }
        allowTags = {$styles.content.allowTags}
        denyTags = *