• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/webform/options/integration.php
  • Класс: Bitrix\Crm\WebForm\Options\Integration
  • Вызов: Integration::linkForm
private function linkForm(array $integration) : Result
{
	$subscribeResult = $this->subscribeOnLeadAdsEvents(
		$integration['ADS_TYPE'],
		$integration['ADS_ACCOUNT_ID'],
		$integration['ADS_FORM_ID']
	);

	/**if subscribe on webhook failed skip link add to db*/
	if (!$subscribeResult->isSuccess())
	{
		return $subscribeResult;
	}

	$linkSaveResult = AdsFormLinkTable::add(
		array(
			'LINK_DIRECTION' => AdsFormLinkTable::LINK_DIRECTION_IMPORT,
			'WEBFORM_ID' => $this->form->getId(),
			'ADS_TYPE' => $integration['ADS_TYPE'],
			'ADS_ACCOUNT_ID' => $integration['ADS_ACCOUNT_ID'],
			'ADS_FORM_ID' => $integration['ADS_FORM_ID'],
			'ADS_FORM_NAME' => $integration['ADS_FORM_NAME'],
			'ADS_ACCOUNT_NAME' => $integration['ADS_ACCOUNT_NAME'] ?? '',
		)
	);

	/**if add link to db failed skip add mapping to db*/
	if (!$linkSaveResult->isSuccess())
	{
		return $linkSaveResult;
	}

	$linkFormIntegrationResult = new Result();
	$linkFormIntegrationResult->setData([
		"LINK_ID" => $linkSaveResult->getId()
	]);

	return $linkFormIntegrationResult;
}