[BUGFIX] Remove invalid parent constructor call and cleanup code 67/58367/7
authorFrank Naegler <frank.naegler@typo3.org>
Fri, 21 Sep 2018 10:17:16 +0000 (12:17 +0200)
committerBenni Mack <benni@typo3.org>
Mon, 24 Sep 2018 04:25:12 +0000 (06:25 +0200)
Resolves: #86352
Releases: master
Change-Id: I30ed9f8f2b14819654fc496991b860b0bdf97d9c
Reviewed-on: https://review.typo3.org/58367
Reviewed-by: Markus Klein <markus.klein@typo3.org>
Tested-by: Markus Klein <markus.klein@typo3.org>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benjamin Franzke <bfr@qbus.de>
Reviewed-by: Andreas Wolf <andreas.wolf@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
typo3/sysext/core/Classes/ExpressionLanguage/AbstractProvider.php
typo3/sysext/core/Classes/ExpressionLanguage/FunctionsProvider/DefaultFunctionsProvider.php
typo3/sysext/core/Classes/ExpressionLanguage/FunctionsProvider/Typo3ConditionFunctionsProvider.php
typo3/sysext/core/Documentation/Changelog/9.4/Feature-85828-MoveSymfonyExpressionLanguageHandlingIntoEXTcore.rst
typo3/sysext/form/Classes/Domain/Condition/ConditionProvider.php
typo3/sysext/form/Classes/Domain/Condition/Functions/FormConditionFunctionsProvider.php
typo3/sysext/form/composer.json

index 3a6ae6a..f635588 100644 (file)
@@ -15,15 +15,13 @@ namespace TYPO3\CMS\Core\ExpressionLanguage;
  * The TYPO3 project - inspiring people to share!
  */
 
-use Symfony\Component\ExpressionLanguage\ExpressionFunctionProviderInterface;
-
 /**
  * Class AbstractProvider
  */
 abstract class AbstractProvider implements ProviderInterface
 {
     /**
-     * @var ExpressionFunctionProviderInterface[]
+     * @var array of class names which implements ExpressionFunctionProviderInterface
      */
     protected $expressionLanguageProviders = [];
 
@@ -33,9 +31,9 @@ abstract class AbstractProvider implements ProviderInterface
     protected $expressionLanguageVariables = [];
 
     /**
-     * An array of objects which implements the ExpressionFunctionProviderInterface
+     * An array of class names which implements the ExpressionFunctionProviderInterface
      *
-     * @return ExpressionFunctionProviderInterface[]
+     * @return array
      */
     public function getExpressionLanguageProviders(): array
     {
index 3055217..ed9dde3 100644 (file)
@@ -46,7 +46,7 @@ class DefaultFunctionsProvider implements ExpressionFunctionProviderInterface
     {
         return new ExpressionFunction(
             'ip',
-            function ($str) {
+            function () {
                 // Not implemented, we only use the evaluator
             },
             function ($arguments, $str) {
@@ -62,7 +62,7 @@ class DefaultFunctionsProvider implements ExpressionFunctionProviderInterface
     {
         return new ExpressionFunction(
             'compatVersion',
-            function ($str) {
+            function () {
                 // Not implemented, we only use the evaluator
             },
             function ($arguments, $str) {
@@ -74,7 +74,7 @@ class DefaultFunctionsProvider implements ExpressionFunctionProviderInterface
 
     protected function getLikeFunction(): ExpressionFunction
     {
-        return new ExpressionFunction('like', function ($str) {
+        return new ExpressionFunction('like', function () {
             // Not implemented, we only use the evaluator
         }, function ($arguments, $haystack, $needle) {
             $result = StringUtility::searchStringWildcard((string)$haystack, (string)$needle);
@@ -89,7 +89,7 @@ class DefaultFunctionsProvider implements ExpressionFunctionProviderInterface
 
     protected function getDateFunction(): ExpressionFunction
     {
-        return new ExpressionFunction('date', function ($str) {
+        return new ExpressionFunction('date', function () {
             // Not implemented, we only use the evaluator
         }, function ($arguments, $format) {
             return GeneralUtility::makeInstance(Context::class)
index 5407605..96903ea 100644 (file)
@@ -45,7 +45,7 @@ class Typo3ConditionFunctionsProvider implements ExpressionFunctionProviderInter
 
     protected function getLoginUserFunction(): ExpressionFunction
     {
-        return new ExpressionFunction('loginUser', function ($str) {
+        return new ExpressionFunction('loginUser', function () {
             // Not implemented, we only use the evaluator
         }, function ($arguments, $str) {
             $user = $arguments['backend']->user ?? $arguments['frontend']->user;
@@ -62,7 +62,7 @@ class Typo3ConditionFunctionsProvider implements ExpressionFunctionProviderInter
 
     protected function getTSFEFunction(): ExpressionFunction
     {
-        return new ExpressionFunction('getTSFE', function ($str) {
+        return new ExpressionFunction('getTSFE', function () {
             // Not implemented, we only use the evaluator
         }, function ($arguments) {
             return $GLOBALS['TSFE'];
@@ -71,7 +71,7 @@ class Typo3ConditionFunctionsProvider implements ExpressionFunctionProviderInter
 
     protected function getUsergroupFunction(): ExpressionFunction
     {
-        return new ExpressionFunction('usergroup', function ($str) {
+        return new ExpressionFunction('usergroup', function () {
             // Not implemented, we only use the evaluator
         }, function ($arguments, $str) {
             $user = $arguments['backend']->user ?? $arguments['frontend']->user;
@@ -92,7 +92,7 @@ class Typo3ConditionFunctionsProvider implements ExpressionFunctionProviderInter
     {
         return new ExpressionFunction(
             'session',
-            function ($str) {
+            function () {
                 // Not implemented, we only use the evaluator
             },
             function ($arguments, $str) {
@@ -122,7 +122,7 @@ class Typo3ConditionFunctionsProvider implements ExpressionFunctionProviderInter
     {
         return new ExpressionFunction(
             'site',
-            function ($str) {
+            function () {
                 // Not implemented, we only use the evaluator
             },
             function ($arguments, $str) {
@@ -144,7 +144,7 @@ class Typo3ConditionFunctionsProvider implements ExpressionFunctionProviderInter
     {
         return new ExpressionFunction(
             'siteLanguage',
-            function ($str) {
+            function () {
                 // Not implemented, we only use the evaluator
             },
             function ($arguments, $str) {
index 33f5250..aabfa13 100644 (file)
@@ -57,7 +57,7 @@ Next implement your provider class :php:`\TYPO3\CMS\MyExt\ExpressionLanguage\MyC
 
    class MyCustomProvider extends \TYPO3\CMS\Core\ExpressionLanguage\AbstractProvider
    {
-      public function __construct(ServerRequestInterface $request)
+      public function __construct()
       {
          $this->expressionLanguageVariables = [
             'foo' => 1,
index 74dd016..ae924ca 100644 (file)
@@ -15,7 +15,6 @@ namespace TYPO3\CMS\Form\Domain\Condition;
  * The TYPO3 project - inspiring people to share!
  */
 
-use Psr\Http\Message\ServerRequestInterface;
 use TYPO3\CMS\Core\ExpressionLanguage\AbstractProvider;
 use TYPO3\CMS\Form\Domain\Condition\Functions\FormConditionFunctionsProvider;
 
@@ -27,9 +26,8 @@ use TYPO3\CMS\Form\Domain\Condition\Functions\FormConditionFunctionsProvider;
    */
 class ConditionProvider extends AbstractProvider
 {
-    public function __construct(ServerRequestInterface $request)
+    public function __construct()
     {
-        parent::__construct($request);
         $this->expressionLanguageProviders = [
             FormConditionFunctionsProvider::class
         ];
index 06a4016..abc239c 100644 (file)
@@ -28,7 +28,7 @@ class FormConditionFunctionsProvider implements ExpressionFunctionProviderInterf
     {
         return new ExpressionFunction(
             'getFormValue',
-            function ($str) {
+            function () {
                 // Not implemented, we only use the evaluator
             },
             function ($arguments, $field) {
index 75c5f93..3f2d529 100644 (file)
@@ -14,6 +14,7 @@
        },
        "require": {
                "psr/http-message": "~1.0",
+               "symfony/expression-language": "^4.1",
                "typo3/cms-core": "9.5.*@dev"
        },
        "conflict": {