id; $isFobidden = false; $repository = $this->getEntityManager()->getRepository('EmailAddress'); if (!$user->isAdmin()) { $entityWithSameAddressList = $repository->getEntityListByAddressId($id, $excludeEntity); foreach ($entityWithSameAddressList as $e) { if (!$this->getAclManager()->check($user, $e, 'edit')) { $isFobidden = true; if ( $e->getEntityType() === 'User' && $e->isPortal() && $excludeEntity->getEntityType() === 'Contact' && $e->get('contactId') === $excludeEntity->id ) { $isFobidden = false; } if ($isFobidden) break; } } } return !$isFobidden; } }