diff --git a/application/Espo/Entities/Email.php b/application/Espo/Entities/Email.php index 29558cafac..082d717acc 100644 --- a/application/Espo/Entities/Email.php +++ b/application/Espo/Entities/Email.php @@ -748,6 +748,19 @@ class Email extends Entity return $this; } + public function setGroupFolder(Link|GroupEmailFolder|null $groupFolder): self + { + if ($groupFolder instanceof GroupEmailFolder) { + $this->relations->set('groupFolder', $groupFolder); + + return $this; + } + + $this->setValueObject('groupFolder', $groupFolder); + + return $this; + } + public function setGroupFolderId(?string $groupFolderId): self { $this->set('groupFolderId', $groupFolderId); diff --git a/application/Espo/Resources/metadata/entityDefs/Email.json b/application/Espo/Resources/metadata/entityDefs/Email.json index 673ca655d8..aafa078cb7 100644 --- a/application/Espo/Resources/metadata/entityDefs/Email.json +++ b/application/Espo/Resources/metadata/entityDefs/Email.json @@ -589,7 +589,8 @@ "readOnly": true, "fieldManagerParamList": [ "audited" - ] + ], + "audited": true }, "groupStatusFolder": { "type": "enum", diff --git a/application/Espo/Tools/Email/InboxService.php b/application/Espo/Tools/Email/InboxService.php index b080aab282..809420554e 100644 --- a/application/Espo/Tools/Email/InboxService.php +++ b/application/Espo/Tools/Email/InboxService.php @@ -118,7 +118,7 @@ class InboxService } $email - ->setGroupFolderId(null) + ->setGroupFolder(null) ->setGroupStatusFolder(null); $this->entityManager->saveEntity($email); @@ -163,7 +163,7 @@ class InboxService } $email - ->setGroupFolderId($folderId) + ->setGroupFolder($folder) ->setGroupStatusFolder(null); $this->entityManager->saveEntity($email); diff --git a/application/Espo/Tools/Email/SendService.php b/application/Espo/Tools/Email/SendService.php index 0f9a3bb5f4..9d6243e9f8 100644 --- a/application/Espo/Tools/Email/SendService.php +++ b/application/Espo/Tools/Email/SendService.php @@ -663,7 +663,7 @@ class SendService } if ($replied && $replied->getGroupFolder()) { - $entity->setGroupFolderId($replied->getGroupFolder()->getId()); + $entity->setGroupFolder($replied->getGroupFolder()); } }