entity workflow: handle sending an access key by email

This commit is contained in:
2022-02-24 21:53:05 +01:00
parent ff1ff8f5bb
commit 1479e2ae9a
13 changed files with 188 additions and 40 deletions

View File

@@ -41,6 +41,17 @@ class EntityWorkflow implements TrackCreationInterface, TrackUpdateInterface
use TrackUpdateTrait;
/**
* a list of future dest emails for the next steps.
*
* This is in used in order to let controller inform who will be the future emails which will validate
* the next step. This is necessary to perform some computation about the next emails, before they are
* associated to the entity EntityWorkflowStep.
*
* @var array|string[]
*/
public array $futureDestEmails = [];
/**
* a list of future dest users for the next steps.
*

View File

@@ -142,7 +142,7 @@ class EntityWorkflowStep
public function addDestUserByAccessKey(User $user): self
{
if (!$this->destUserByAccessKey->contains($user)) {
if (!$this->destUserByAccessKey->contains($user) && !$this->destUser->contains($user)) {
$this->destUserByAccessKey[] = $user;
$this->getEntityWorkflow()
->addSubscriberToFinal($user)