fix email edit access error
This commit is contained in:
@@ -57,7 +57,14 @@ class CheckFromAddress implements SaveHook
|
||||
return;
|
||||
}
|
||||
|
||||
if (!$entity->getFromAddress()) {
|
||||
$fromAddress = $entity->getFromAddress();
|
||||
|
||||
// Should be after 'getFromAddress'.
|
||||
if (!$entity->isAttributeChanged('from')) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!$fromAddress) {
|
||||
throw new BadRequest("No 'from' address");
|
||||
}
|
||||
|
||||
@@ -65,7 +72,7 @@ class CheckFromAddress implements SaveHook
|
||||
return;
|
||||
}
|
||||
|
||||
$fromAddress = strtolower($entity->getFromAddress());
|
||||
$fromAddress = strtolower($fromAddress);
|
||||
|
||||
foreach ($this->user->getEmailAddressGroup()->getAddressList() as $address) {
|
||||
if ($fromAddress === strtolower($address)) {
|
||||
|
||||
@@ -109,8 +109,11 @@ class Email extends Database implements
|
||||
|
||||
public function loadFromField(EmailEntity $entity): void
|
||||
{
|
||||
if ($entity->get('fromEmailAddressName')) {
|
||||
$entity->set('from', $entity->get('fromEmailAddressName'));
|
||||
$fromEmailAddressName = $entity->get('fromEmailAddressName');
|
||||
|
||||
if ($fromEmailAddressName && !$entity->isAttributeChanged('fromEmailAddressName')) {
|
||||
$entity->set('from', $fromEmailAddressName);
|
||||
$entity->setFetched('from', $fromEmailAddressName);
|
||||
|
||||
return;
|
||||
}
|
||||
@@ -122,6 +125,7 @@ class Email extends Database implements
|
||||
|
||||
if ($ea) {
|
||||
$entity->set('from', $ea->get('name'));
|
||||
$entity->setFetched('from', $ea->get('name'));
|
||||
|
||||
return;
|
||||
}
|
||||
@@ -132,6 +136,7 @@ class Email extends Database implements
|
||||
}
|
||||
|
||||
$entity->set('from', null);
|
||||
$entity->setFetched('from', null);
|
||||
}
|
||||
|
||||
public function loadToField(EmailEntity $entity): void
|
||||
|
||||
Reference in New Issue
Block a user