array( array( 'firstName' => $entity->get('firstName'), 'lastName' => $entity->get('lastName'), ) ) ); if ( ($entity->get('emailAddress') || $entity->get('emailAddressData')) && ($entity->isNew() || $entity->isAttributeChanged('emailAddress') || $entity->isAttributeChanged('emailAddressData')) ) { if ($entity->get('emailAddress')) { $list = [$entity->get('emailAddress')]; } if ($entity->get('emailAddressData')) { foreach ($entity->get('emailAddressData') as $row) { if (!in_array($row->emailAddress, $list)) { $list[] = $row->emailAddress; } } } foreach ($list as $emailAddress) { $data['OR'][] = array( 'emailAddress' => $emailAddress ); } } return $data; } public function convert($id) { $entityManager = $this->getEntityManager(); $target = $this->getEntity($id); if (!$this->getAcl()->check($target, 'delete')) { throw new Forbidden(); } if (!$this->getAcl()->check('Lead', 'read')) { throw new Forbidden(); } $lead = $entityManager->getEntity('Lead'); $lead->set($target->toArray()); $entityManager->removeEntity($target); $entityManager->saveEntity($lead); return $lead; } }