This commit is contained in:
Yuri Kuznetsov
2024-09-16 16:24:23 +03:00
parent cfbc3ec8e0
commit 067765d9b5
4 changed files with 50 additions and 8 deletions
@@ -280,8 +280,8 @@ class Saver implements SaverInterface
$this->entityManager->saveEntity($emailAddress);
} else {
$revertData[$address] = [
'optOut' => $emailAddress->get('optOut'),
'invalid' => $emailAddress->get('invalid'),
'optOut' => $emailAddress->isOptedOut(),
'invalid' => $emailAddress->isInvalid(),
];
}
}
@@ -470,14 +470,14 @@ class Saver implements SaverInterface
/** @var EmailAddress $emailAddressNew */
$emailAddressNew = $this->entityManager->getNewEntity(EmailAddress::ENTITY_TYPE);
$emailAddressNew->set('name', $emailAddressValue);
$emailAddressNew->setAddress($emailAddressValue);
if ($entity->has(self::ATTR_EMAIL_ADDRESS_IS_OPTED_OUT)) {
$emailAddressNew->setOptedOut((bool) $entity->get(self::ATTR_EMAIL_ADDRESS_IS_OPTED_OUT));
}
if ($entity->has(self::ATTR_EMAIL_ADDRESS_IS_INVALID)) {
$emailAddressNew->set('invalid', (bool) $entity->get(self::ATTR_EMAIL_ADDRESS_IS_INVALID));
$emailAddressNew->setInvalid((bool) $entity->get(self::ATTR_EMAIL_ADDRESS_IS_INVALID));
}
$this->entityManager->saveEntity($emailAddressNew);
@@ -511,20 +511,20 @@ class Saver implements SaverInterface
/** @var PhoneNumber $phoneNumberNew */
$phoneNumberNew = $this->entityManager->getNewEntity(PhoneNumber::ENTITY_TYPE);
$phoneNumberNew->set('name', $phoneNumberValue);
$phoneNumberNew->setNumber($phoneNumberValue);
if ($entity->has(self::ATTR_PHONE_NUMBER_IS_OPTED_OUT)) {
$phoneNumberNew->set('optOut', (bool)$entity->get(self::ATTR_PHONE_NUMBER_IS_OPTED_OUT));
$phoneNumberNew->setOptedOut((bool)$entity->get(self::ATTR_PHONE_NUMBER_IS_OPTED_OUT));
}
if ($entity->has(self::ATTR_PHONE_NUMBER_IS_INVALID)) {
$phoneNumberNew->set('invalid', (bool)$entity->get(self::ATTR_PHONE_NUMBER_IS_INVALID));
$phoneNumberNew->setInvalid((bool)$entity->get(self::ATTR_PHONE_NUMBER_IS_INVALID));
}
$defaultType = $this->metadata
->get("entityDefs.{$entity->getEntityType()}.fields.phoneNumber.defaultType");
$phoneNumberNew->set('type', $defaultType);
$phoneNumberNew->setType($defaultType);
$this->entityManager->saveEntity($phoneNumberNew);
}
@@ -80,4 +80,18 @@ class EmailAddress extends Entity
return $this;
}
public function setInvalid(bool $invalid): self
{
$this->set('invalid', $invalid);
return $this;
}
public function setAddress(string $address): self
{
$this->set('name', $address);
return $this;
}
}
+28
View File
@@ -71,5 +71,33 @@ class PhoneNumber extends Entity
{
return $this->get('type');
}
public function setType(string $type): self
{
$this->set('type', $type);
return $this;
}
public function setNumber(string $number): self
{
$this->set('name', $number);
return $this;
}
public function setOptedOut(bool $optedOut): self
{
$this->set('optOut', $optedOut);
return $this;
}
public function setInvalid(bool $invalid): self
{
$this->set('invalid', $invalid);
return $this;
}
}