/**
* @param User $user
* @param ContactInterface $contact
*/
protected function archiveEmail(User $user, ContactInterface $contact)
{
if ($contact->getMainEmail() !== $user->getEmail()) {
if ($contact->getMainEmail()) {
$hasEmail = false;
/** @var Email $email */
foreach ($contact->getEmails() as $email) {
if ($email->getEmail() === $contact->getMainEmail()) {
$hasEmail = true;
}
}
if (!$hasEmail) {
$email = new Email();
$email->setEmail($contact->getMainEmail());
/** @var EmailType $emailType */
$emailType = $this->entityManager->getRepository(EmailType::class)->find(1);
if ($emailType) {
$email->setEmailType($emailType);
$contact->addEmail($email);
}
}
}
$contact->setMainEmail($user->getEmail());
}
}