Проверка на дубль контакта

Функция проверки на уже имеющийся контакт в базе CRM поможет избежать дублирование записей, создаваемых на основе кастомных веб-форм.


function findContactByEmailOrPhone($email = '', $phone = '')
{
    if (empty($email) && empty($phone)) {
        return false;
    }

    $formattedPhone = preg_replace('/[^\d+]/', '', $phone);

    if ($formattedPhone) {
        $result = CRest::call('crm.duplicate.findbycomm', [
            'type' => 'PHONE',
            'values' => [$formattedPhone]
        ]);

        if (is_array($result['result']['CONTACT'])) {
            return reset($result['result']['CONTACT']);
        }
    }
    if ($email) {
        $result = CRest::call('crm.duplicate.findbycomm', [
            'type' => 'EMAIL',
            'values' => [$email]
        ]);
        if (is_array($result['result']['CONTACT'])) {
            return reset($result['result']['CONTACT']);
            CRest::setLog($result['result']['CONTACT'], 'tilda_contact_id');
        }
    }

}
    
Связаться с нами

Свяжитесь с нами удобным для вас способом

Наши контакты
Написать нам