From 36ee5cd51eabe42487185e775db30ab24dd9880f Mon Sep 17 00:00:00 2001 From: Andrew Longosz Date: Wed, 5 Jun 2024 17:54:35 +0200 Subject: [PATCH] IBX-7911: Replaced usage of magic getters for load subtree code paths (#76) For more details see https://issues.ibexa.co/browse/IBX-7911 and https://github.com/ibexa/user/pull/76 Key changes: * Introduced Value Object strict getters and deprecated magic ones --------- Co-authored-by: Konrad Oboza --- src/lib/Strategy/DefaultThumbnailStrategy.php | 4 +-- src/lib/UserSetting/UserSetting.php | 28 ++++++++++++++++--- 2 files changed, 26 insertions(+), 6 deletions(-) diff --git a/src/lib/Strategy/DefaultThumbnailStrategy.php b/src/lib/Strategy/DefaultThumbnailStrategy.php index ede78f4..2ecd698 100644 --- a/src/lib/Strategy/DefaultThumbnailStrategy.php +++ b/src/lib/Strategy/DefaultThumbnailStrategy.php @@ -57,8 +57,8 @@ private function getInitials(array $fields): string foreach ($this->initialsFieldDefIdentifiers as $identifier) { /** @var \Ibexa\Contracts\Core\Repository\Values\Content\Field $field */ foreach ($fields as $field) { - if ($field->fieldDefIdentifier === $identifier) { - $initials .= substr((string)$field->value, 0, 1); + if ($field->getFieldDefinitionIdentifier() === $identifier) { + $initials .= substr((string)$field->getValue(), 0, 1); } } } diff --git a/src/lib/UserSetting/UserSetting.php b/src/lib/UserSetting/UserSetting.php index 3b90145..177d4dc 100644 --- a/src/lib/UserSetting/UserSetting.php +++ b/src/lib/UserSetting/UserSetting.php @@ -11,10 +11,10 @@ use Ibexa\Contracts\Core\Repository\Values\ValueObject; /** - * @property string $identifier - * @property string $name - * @property string $description - * @property string $value + * @property string $identifier @deprecated 4.6.7 accessing magic getter is deprecated and will be removed in 5.0.0. Use {@see UserSetting::getIdentifier()} instead. + * @property string $name @deprecated 4.6.7 accessing magic getter is deprecated and will be removed in 5.0.0. Use {@see UserSetting::getName()} instead. + * @property string $description @deprecated 4.6.7 accessing magic getter is deprecated and will be removed in 5.0.0. Use {@see UserSetting::getDescription()} instead. + * @property string $value @deprecated 4.6.7 accessing magic getter is deprecated and will be removed in 5.0.0. Use {@see UserSetting::getValue()} instead. */ class UserSetting extends ValueObject { @@ -29,6 +29,26 @@ class UserSetting extends ValueObject /** @var string */ protected $value; + + public function getIdentifier(): string + { + return $this->identifier; + } + + public function getName(): string + { + return $this->name; + } + + public function getDescription(): string + { + return $this->description; + } + + public function getValue(): string + { + return $this->value; + } } class_alias(UserSetting::class, 'EzSystems\EzPlatformUser\UserSetting\UserSetting');