• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/Service/Factory/Contact.php
  • Класс: Bitrix\Crm\Service\Factory\Contact
  • Вызов: Contact::configureAddOperation
protected function configureAddOperation(Operation $operation): void
{
	$operation
		->addAction(
			Operation::ACTION_BEFORE_SAVE,
			new Operation\Action\Compatible\SendEvent\WithCancel\Update(
				'OnBeforeCrmContactAdd',
				'CRM_CONTACT_CREATION_CANCELED',
			),
		)
		->addAction(
			Operation::ACTION_AFTER_SAVE,
			new Operation\Action\ClearCache('b_crm_contact'),
		)
	;

	if ($operation->getItem()->getCategoryId() === 0)
	{
		$operation
			->addAction(
				Operation::ACTION_AFTER_SAVE,
				new Operation\Action\Compatible\SocialNetwork\ProcessAdd(),
			)
		;
	}

	$operation
		->addAction(
			Operation::ACTION_AFTER_SAVE,
			new Operation\Action\Compatible\SendEvent('OnAfterCrmContactAdd'),
		)
		->addAction(
			Operation::ACTION_AFTER_SAVE,
			new Operation\Action\Compatible\SendEvent\ExternalAdd('OnAfterExternalCrmContactAdd'),
		)
	;
}