From 7596d9cd2543bdd4f53c10deb0965c4ed97281b8 Mon Sep 17 00:00:00 2001
From: Torben Hansen <derhansen@gmail.com>
Date: Fri, 9 Feb 2024 19:19:19 +0100
Subject: [PATCH] [BUGFIX] Wrong language labels in
 StandardContentPreviewRenderer
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

The language labels for `noPluginSelected` and `edit` in
StandardContentPreviewRenderer can not be resolved, because the
extension path is wrong.

This change fixes the extension path and additionally streamlines
one label output, by using `htmlspecialchars` to escape the
generated label similar to the other label output in this class.

Additionally a similar wrong extension path in
`ExampleLinkType.rst.txt` has been adapted.

Resolves: #103095
Related: #100675
Releases: main, 12.4
Change-Id: I4882133025c938fc3b6928b36237e782e9465dcc
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82846
Tested-by: Stefan Bürk <stefan@buerk.tech>
Tested-by: core-ci <typo3@b13.com>
Reviewed-by: Stefan Bürk <stefan@buerk.tech>
---
 .../Classes/Preview/StandardContentPreviewRenderer.php        | 4 ++--
 .../CodeSnippets/Examples/ExampleLinkType.rst.txt             | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/typo3/sysext/backend/Classes/Preview/StandardContentPreviewRenderer.php b/typo3/sysext/backend/Classes/Preview/StandardContentPreviewRenderer.php
index c07a3017bd7c..b8658b6da9d5 100644
--- a/typo3/sysext/backend/Classes/Preview/StandardContentPreviewRenderer.php
+++ b/typo3/sysext/backend/Classes/Preview/StandardContentPreviewRenderer.php
@@ -153,7 +153,7 @@ class StandardContentPreviewRenderer implements PreviewRendererInterface, Logger
                         $out .= '<div class="alert alert-danger">' . htmlspecialchars($message) . '</div>';
                     }
                 } else {
-                    $out .= '<div class="alert alert-warning">' . $languageService->sL('LLL:EXT:typo3/sysext/backend/Resources/Private/Language/locallang_layout.xlf:noPluginSelected') . '</div>';
+                    $out .= '<div class="alert alert-warning">' . htmlspecialchars($languageService->sL('LLL:EXT:backend/Resources/Private/Language/locallang_layout.xlf:noPluginSelected')) . '</div>';
                 }
                 break;
             default:
@@ -379,7 +379,7 @@ class StandardContentPreviewRenderer implements PreviewRendererInterface, Logger
             ];
             $uriBuilder = GeneralUtility::makeInstance(UriBuilder::class);
             $url = (string)$uriBuilder->buildUriFromRoute('record_edit', $urlParameters);
-            return '<a href="' . htmlspecialchars($url) . '" title="' . htmlspecialchars($this->getLanguageService()->sL('LLL:EXT:typo3/sysext/backend/Resources/Private/Language/locallang_layout.xlf:edit')) . '">' . $linkText . '</a>';
+            return '<a href="' . htmlspecialchars($url) . '" title="' . htmlspecialchars($this->getLanguageService()->sL('LLL:EXT:backend/Resources/Private/Language/locallang_layout.xlf:edit')) . '">' . $linkText . '</a>';
         }
         return $linkText;
     }
diff --git a/typo3/sysext/linkvalidator/Documentation/CodeSnippets/Examples/ExampleLinkType.rst.txt b/typo3/sysext/linkvalidator/Documentation/CodeSnippets/Examples/ExampleLinkType.rst.txt
index 862d1c9a0342..d078a231f6db 100644
--- a/typo3/sysext/linkvalidator/Documentation/CodeSnippets/Examples/ExampleLinkType.rst.txt
+++ b/typo3/sysext/linkvalidator/Documentation/CodeSnippets/Examples/ExampleLinkType.rst.txt
@@ -19,11 +19,11 @@
             $lang = $this->getLanguageService();
             switch ($errorParams['errno'] ?? 0) {
                 case 404:
-                    $message = $lang->sL('LLL:EXT:typo3/sysext/linkvalidator/Resources/Private/Language/Module/locallang.xlf:list.report.pagenotfound404');
+                    $message = $lang->sL('LLL:EXT:linkvalidator/Resources/Private/Language/Module/locallang.xlf:list.report.pagenotfound404');
                     break;
                 default:
                     // fall back to generic error message
-                    $message = sprintf($lang->sL('LLL:EXT:typo3/sysext/linkvalidator/Resources/Private/Language/Module/locallang.xlf:list.report.externalerror'), $errorParams['errno']);
+                    $message = sprintf($lang->sL('LLL:EXT:linkvalidator/Resources/Private/Language/Module/locallang.xlf:list.report.externalerror'), $errorParams['errno']);
             }
             return $message;
         }
-- 
GitLab