diff --git a/Classes/Controller/FrontEndEditorController.php b/Classes/Controller/FrontEndEditorController.php index 8b2c50c8..486c5c73 100644 --- a/Classes/Controller/FrontEndEditorController.php +++ b/Classes/Controller/FrontEndEditorController.php @@ -17,15 +17,10 @@ */ class FrontEndEditorController extends ActionController { - private Context $context; - - private TeaRepository $teaRepository; - - public function __construct(Context $context, TeaRepository $teaRepository) - { - $this->context = $context; - $this->teaRepository = $teaRepository; - } + public function __construct( + private readonly Context $context, + private readonly TeaRepository $teaRepository, + ) {} public function indexAction(): ResponseInterface { @@ -48,9 +43,7 @@ private function getUidOfLoggedInUser(): int return $userUid; } - /** - * @Extbase\IgnoreValidation("tea") - */ + #[Extbase\IgnoreValidation(['argumentName' => 'tea'])] public function editAction(Tea $tea): ResponseInterface { $this->checkIfUserIsOwner($tea); @@ -79,9 +72,7 @@ public function updateAction(Tea $tea): ResponseInterface return $this->redirect('index'); } - /** - * @Extbase\IgnoreValidation("tea") - */ + #[Extbase\IgnoreValidation(['argumentName' => 'tea'])] public function newAction(?Tea $tea = null): ResponseInterface { // Note: We are using `makeInstance` here instead of `new` to allow for XCLASSing. @@ -100,9 +91,7 @@ public function createAction(Tea $tea): ResponseInterface return $this->redirect('index'); } - /** - * @Extbase\IgnoreValidation("tea") - */ + #[Extbase\IgnoreValidation(['argumentName' => 'tea'])] public function deleteAction(Tea $tea): ResponseInterface { $this->checkIfUserIsOwner($tea); diff --git a/Classes/Controller/TeaController.php b/Classes/Controller/TeaController.php index 46086ac8..4a715d60 100644 --- a/Classes/Controller/TeaController.php +++ b/Classes/Controller/TeaController.php @@ -14,12 +14,9 @@ */ class TeaController extends ActionController { - private TeaRepository $teaRepository; - - public function __construct(TeaRepository $teaRepository) - { - $this->teaRepository = $teaRepository; - } + public function __construct( + private readonly TeaRepository $teaRepository, + ) {} public function indexAction(): ResponseInterface { diff --git a/Classes/Domain/Model/Tea.php b/Classes/Domain/Model/Tea.php index 7ce31a09..c7f4a32c 100644 --- a/Classes/Domain/Model/Tea.php +++ b/Classes/Domain/Model/Tea.php @@ -14,22 +14,18 @@ */ class Tea extends AbstractEntity { - /** - * @Extbase\Validate("StringLength", options={"maximum": 255}) - * @Extbase\Validate("NotEmpty") - */ + #[Extbase\Validate(['validator' => 'StringLength', 'options' => ['maximum' => 255]])] + #[Extbase\Validate(['validator' => 'NotEmpty'])] protected string $title = ''; - /** - * @Extbase\Validate("StringLength", options={"maximum": 2000}) - */ + #[Extbase\Validate(['validator' => 'StringLength', 'options' => ['maximum' => 2000]])] protected string $description = ''; /** * @var FileReference|null * @phpstan-var FileReference|LazyLoadingProxy|null - * @Extbase\ORM\Lazy */ + #[Extbase\ORM\Lazy] protected $image; // Note: We cannot use `@var` for the more specific type annotation here as this confuses the Extbase type mapper. diff --git a/rector.php b/rector.php index 7f171a97..e8f7fdd7 100644 --- a/rector.php +++ b/rector.php @@ -26,7 +26,7 @@ __DIR__ . '/ext_emconf.php', __DIR__ . '/ext_localconf.php', ]) - ->withPhpVersion(PhpVersion::PHP_74) + ->withPhpVersion(PhpVersion::PHP_81) ->withPhpSets( true )