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

	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('OnAfterCrmCompanyAdd'),
		)
		->addAction(
			Operation::ACTION_AFTER_SAVE,
			new Operation\Action\Compatible\SendEvent\ExternalAdd('OnAfterExternalCrmCompanyAdd'),
		)
	;
}