[TASK] Move CompilableInterface to each condition ViewHelper 25/48725/2
authorClaus Due <claus@namelesscoder.net>
Wed, 29 Jun 2016 15:47:30 +0000 (17:47 +0200)
committerJan Helke <typo3@helke.de>
Mon, 11 Jul 2016 09:17:39 +0000 (11:17 +0200)
commitde4f139b4f6e22f76857046082ff7d416424a69d
treeccd5010e31f947d960392c84db557479b8f72a97
parente64cc649e149c4aee9a7ca9b14f968aedffa1442
[TASK] Move CompilableInterface to each condition ViewHelper

This change moves the CompilableInterface away from the abstract
condition ViewHelper class, over to each of the implementations.
This is done in order to prevent incompatible third party
ViewHelpers from incorrectly evaluating conditions - instead,
such ViewHelpers will now be uncompilable but function correctly.

Any third party ViewHelper can opt-in to being compilable by
implementing the CompilableInterface and ensuring that the
``evaluateCondition`` method is available (and is at least of
``protected`` visibility).

Change-Id: If2dac75debe2ce5872a79d8e54037bb338240f27
Resolves: #73565
Releases: 7.6
Reviewed-on: https://review.typo3.org/48725
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Jigal van Hemert <jigal.van.hemert@typo3.org>
Reviewed-by: Jan Helke <typo3@helke.de>
Tested-by: Jan Helke <typo3@helke.de>
typo3/sysext/core/Documentation/Changelog/7.6/Important-73565-AbstractConditionViewHelperNoLongerAutomaticallyCompilable.rst [new file with mode: 0644]
typo3/sysext/fluid/Classes/Core/ViewHelper/AbstractConditionViewHelper.php
typo3/sysext/fluid/Classes/ViewHelpers/Be/Security/IfAuthenticatedViewHelper.php
typo3/sysext/fluid/Classes/ViewHelpers/Be/Security/IfHasRoleViewHelper.php
typo3/sysext/fluid/Classes/ViewHelpers/IfViewHelper.php
typo3/sysext/fluid/Classes/ViewHelpers/Security/IfAuthenticatedViewHelper.php
typo3/sysext/fluid/Classes/ViewHelpers/Security/IfHasRoleViewHelper.php