![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/mautic.corals.io/app/bundles/LeadBundle/Deduplicate/ |
<?php namespace Mautic\LeadBundle\Deduplicate; use Mautic\LeadBundle\Model\FieldModel; trait DeduperTrait { private $object = 'lead'; /** * @var FieldModel */ private $fieldModel; /** * @var array */ private $availableFields; public function getUniqueData(array $queryFields): array { $uniqueLeadFields = $this->fieldModel->getUniqueIdentifierFields(['object' => $this->object]); $uniqueLeadFieldData = []; $inQuery = array_intersect_key($queryFields, $this->getAvailableFields()); foreach ($inQuery as $k => $v) { // Don't use empty values when checking for duplicates if (empty($v)) { continue; } if (array_key_exists($k, $uniqueLeadFields)) { $uniqueLeadFieldData[$k] = $v; } } return $uniqueLeadFieldData; } /** * @return array */ private function getAvailableFields() { if (null === $this->availableFields) { $this->availableFields = $this->fieldModel->getFieldList( false, false, [ 'isPublished' => true, 'object' => $this->object, ] ); } return $this->availableFields; } }