You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Note: Same bug exists in linkvalidator. Is most likely due to problem in link (softref) parsing in core. Will not fix in brofix.
Describe the bug
This is reported as broken link (assuming CE #999999999 does not exist on page 27):
<p><a href="t3://page?uid=27#999999999">link to another page with missing anchor</a></p>
This is not reported as broken link (assuming CE #999999999 does not exist on current page):
<p><a href="t3://page?uid=current#99999999">link to current page with missing anchor</a></p>
To Reproduce
Steps to reproduce the behavior:
Create a link
Switch to source code mode in RTE. Remove the string within the quotes in href="", save
The link will now be converted to an internal link to current page (e.g. t3://page?uid=current)
Add an anchor to a non existing CE to the link (e.g. t3://page?uid=current#99999)
Check internal broken links on current page
Actual behavior
The link is not diplayed as broken.
Expected behavior
The link should be displayed as broken. (This is the case for links with missing CE if a format such as t3://page?uid=123#9999 is used for an existing page with uid 123 which does not have a CE 9999.)
System (please complete the following information):
This seems to be due to TypolinkTagSoftReferenceParser::parse not considering links with the format t3://page?uid=current#99999999. This function is called in linkvalidator. The parser does not return the t3://page?uid=current links.
So it looks like not an error in linkvalidator, but an error in the link parser.
Note: Same bug exists in linkvalidator. Is most likely due to problem in link (softref) parsing in core. Will not fix in brofix.
Describe the bug
This is reported as broken link (assuming CE #999999999 does not exist on page 27):
<p><a href="t3://page?uid=27#999999999">link to another page with missing anchor</a></p>
This is not reported as broken link (assuming CE #999999999 does not exist on current page):
<p><a href="t3://page?uid=current#99999999">link to current page with missing anchor</a></p>
To Reproduce
Steps to reproduce the behavior:
t3://page?uid=current
)t3://page?uid=current#99999
)Actual behavior
The link is not diplayed as broken.
Expected behavior
The link should be displayed as broken. (This is the case for links with missing CE if a format such as t3://page?uid=123#9999 is used for an existing page with uid 123 which does not have a CE 9999.)
System (please complete the following information):
Additional context
As described in the forge issue:
This seems to be due to TypolinkTagSoftReferenceParser::parse not considering links with the format t3://page?uid=current#99999999. This function is called in linkvalidator. The parser does not return the t3://page?uid=current links.
So it looks like not an error in linkvalidator, but an error in the link parser.
code:
} elseif ($linkDetails['type'] === LinkService::TYPE_PAGE && preg_match('/page\?uid=(\d+)#?(\d+)?/', $matches[1], $pageAndAnchorMatches)) {
https://github.com/TYPO3/typo3/blob/main/typo3/sysext/core/Classes/DataHandling/SoftReference/TypolinkSoftReferenceParser.php
The text was updated successfully, but these errors were encountered: