Skip to content
Snippets Groups Projects
Commit 61150720 authored by dirk_juettner's avatar dirk_juettner Committed by Frank Nägler
Browse files

[TASK] Make HtmlspecialcharsViewHelper compilable

Resolves: #66711
Releases: master
Change-Id: Ie2954aafe8c2f087709ece7fb3c128f656bcbf9c
Reviewed-on: http://review.typo3.org/39167


Reviewed-by: default avatarAnja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: default avatarAnja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: default avatarWouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: default avatarFrank Nägler <typo3@naegler.net>
Tested-by: default avatarFrank Nägler <typo3@naegler.net>
parent 068cee55
Branches
Tags
No related merge requests found
......@@ -35,5 +35,4 @@ abstract class AbstractEncodingViewHelper extends \TYPO3\CMS\Fluid\Core\ViewHelp
}
return self::$defaultEncoding;
}
}
}
\ No newline at end of file
......@@ -11,6 +11,8 @@ namespace TYPO3\CMS\Fluid\ViewHelpers\Format;
* The TYPO3 project - inspiring people to share! *
* */
use TYPO3\CMS\Fluid\Core\ViewHelper\Facets\CompilableInterface;
use TYPO3\CMS\Fluid\Core\Rendering\RenderingContextInterface;
/**
* Applies htmlspecialchars() escaping to a value
......@@ -56,8 +58,31 @@ class HtmlspecialcharsViewHelper extends AbstractEncodingViewHelper implements C
* @api
*/
public function render($value = NULL, $keepQuotes = FALSE, $encoding = NULL, $doubleEncode = TRUE) {
return self::renderStatic(
array(
'value' => $value,
'keepQuotes' => $keepQuotes,
'encoding' => $encoding,
'doubleEncode' => $doubleEncode
),
$this->buildRenderChildrenClosure(),
$this->renderingContext
);
}
/**
* @param array $arguments
* @param callable $renderChildrenClosure
* @param RenderingContextInterface $renderingContext
* @return string
*/
static public function renderStatic(array $arguments, \Closure $renderChildrenClosure, RenderingContextInterface $renderingContext) {
$value = $arguments['value'];
$keepQuotes = $arguments['keepQuotes'];
$encoding = $arguments['encoding'];
$doubleEncode = $arguments['doubleEncode'];
if ($value === NULL) {
$value = $this->renderChildren();
$value = $renderChildrenClosure();
}
if (!is_string($value)) {
return $value;
......@@ -88,4 +113,4 @@ class HtmlspecialcharsViewHelper extends AbstractEncodingViewHelper implements C
$valueVariableName, $valueVariableName, $valueVariableName, $argumentsVariableName, $argumentsVariableName, $argumentsVariableName, $argumentsVariableName);
}
}
}
\ No newline at end of file
......@@ -10,19 +10,25 @@ namespace TYPO3\CMS\Fluid\Tests\Unit\ViewHelpers\Format;
* *
* The TYPO3 project - inspiring people to share! *
* */
use TYPO3\CMS\Fluid\Core\Rendering\RenderingContext;
use TYPO3\CMS\Fluid\ViewHelpers\Format\HtmlspecialcharsViewHelper;
use TYPO3\CMS\Core\Tests\UnitTestCase;
/**
* Test case
*/
class HtmlspecialcharsViewHelperTest extends \TYPO3\CMS\Core\Tests\UnitTestCase {
class HtmlspecialcharsViewHelperTest extends UnitTestCase {
/**
* @var \TYPO3\CMS\Fluid\ViewHelpers\Format\HtmlspecialcharsViewHelper
* @var HtmlspecialcharsViewHelper
*/
protected $viewHelper;
protected function setUp() {
$this->viewHelper = $this->getMock(\TYPO3\CMS\Fluid\ViewHelpers\Format\HtmlspecialcharsViewHelper::class, array('renderChildren'));
$this->viewHelper = $this->getMock(HtmlspecialcharsViewHelper::class, array('renderChildren'));
/** @var RenderingContext $renderingContext */
$renderingContext = $this->getMock(RenderingContext::class);
$this->viewHelper->setRenderingContext($renderingContext);
}
/**
......@@ -118,4 +124,4 @@ class HtmlspecialcharsViewHelperTest extends \TYPO3\CMS\Core\Tests\UnitTestCase
$this->assertSame($source, $actualResult);
}
}
}
\ No newline at end of file
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment