From d495bf4d18f93f17cc3ef20fad18347f7c6795d5 Mon Sep 17 00:00:00 2001
From: Georg Ringer <georg.ringer@gmail.com>
Date: Wed, 24 May 2017 08:07:11 +0200
Subject: [PATCH] [TASK] Remove FormatViewHelper of EXT:cshmanual

Instead of using a custom viewhelper in the EXT:cshmanual use the
ViewHelpers of fluid and chain those.

Resolves: #81324
Releases: master

Change-Id: I7b936b0d684333909c71f35bfe8156a51688646a
Reviewed-on: https://review.typo3.org/52926
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Joerg Kummer <service@enobe.de>
Reviewed-by: Oliver Klee <typo3-coding@oliverklee.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
---
 .../Classes/ViewHelpers/FormatViewHelper.php  | 66 -------------------
 .../Resources/Private/Partials/Manual.html    |  3 +-
 2 files changed, 1 insertion(+), 68 deletions(-)
 delete mode 100644 typo3/sysext/cshmanual/Classes/ViewHelpers/FormatViewHelper.php

diff --git a/typo3/sysext/cshmanual/Classes/ViewHelpers/FormatViewHelper.php b/typo3/sysext/cshmanual/Classes/ViewHelpers/FormatViewHelper.php
deleted file mode 100644
index 70170d188e0b..000000000000
--- a/typo3/sysext/cshmanual/Classes/ViewHelpers/FormatViewHelper.php
+++ /dev/null
@@ -1,66 +0,0 @@
-<?php
-namespace TYPO3\CMS\Cshmanual\ViewHelpers;
-
-/*
- * This file is part of the TYPO3 CMS project.
- *
- * It is free software; you can redistribute it and/or modify it under
- * the terms of the GNU General Public License, either version 2
- * of the License, or any later version.
- *
- * For the full copyright and license information, please read the
- * LICENSE.txt file that was distributed with this source code.
- *
- * The TYPO3 project - inspiring people to share!
- */
-
-use TYPO3\CMS\Fluid\Core\ViewHelper\AbstractViewHelper;
-use TYPO3Fluid\Fluid\Core\Rendering\RenderingContextInterface;
-use TYPO3Fluid\Fluid\Core\ViewHelper\Traits\CompileWithContentArgumentAndRenderStatic;
-
-/**
- * Format the given content
- *
- * @internal
- */
-class FormatViewHelper extends AbstractViewHelper
-{
-    use CompileWithContentArgumentAndRenderStatic;
-
-    /**
-     * Disable the output escaping interceptor
-     *
-     * @var bool
-     */
-    protected $escapeOutput = false;
-
-    /**
-     * Disable the children escaping interceptor
-     *
-     * @var bool
-     */
-    protected $escapeChildren = false;
-
-    /**
-     * Initializes the arguments
-     */
-    public function initializeArguments()
-    {
-        parent::initializeArguments();
-        $this->registerArgument('content', 'string', '');
-    }
-
-    /**
-     * Format the content
-     *
-     * @param array $arguments
-     * @param \Closure $renderChildrenClosure
-     * @param RenderingContextInterface $renderingContext
-     *
-     * @return string
-     */
-    public static function renderStatic(array $arguments, \Closure $renderChildrenClosure, RenderingContextInterface $renderingContext)
-    {
-        return nl2br(trim(strip_tags($renderChildrenClosure(), '<strong><em><b><i>')));
-    }
-}
diff --git a/typo3/sysext/cshmanual/Resources/Private/Partials/Manual.html b/typo3/sysext/cshmanual/Resources/Private/Partials/Manual.html
index 2ab5bef1401a..a51305b63e2c 100644
--- a/typo3/sysext/cshmanual/Resources/Private/Partials/Manual.html
+++ b/typo3/sysext/cshmanual/Resources/Private/Partials/Manual.html
@@ -1,4 +1,3 @@
-{namespace csh=TYPO3\CMS\Cshmanual\ViewHelpers}
 <a id="{manual.table}{f:if(condition:manual.field,then:'.{manual.field}')}"></a>
 
 <h2>{manual.headerLine}</h2>
@@ -9,7 +8,7 @@
 	<h3>
 		<f:translate key="LLL:EXT:lang/Resources/Private/Language/locallang_view_help.xlf:details" />
 	</h3>
-	<csh:format>{manual.configuration.details}</csh:format>
+	{manual.configuration.details -> f:format.stripTags(allowedTags:'<strong><em><b><i>') -> f:format.nl2br()}
 </f:if>
 
 <f:if condition="{manual.configuration.syntax}">
-- 
GitLab