• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/ads/form/fieldmapper.php
  • Класс: Bitrix\Crm\Ads\Form\FieldMapper
  • Вызов: FieldMapper::getMapTypeItem
static function getMapTypeItem($crmType = null, $seoType = null)
{
	if (empty($crmType) && empty($seoType))
	{
		return null;
	}

	$map = [
		[
			'CRM_TYPE' => FieldTable::TYPE_ENUM_PHONE,
			'SEO_TYPE' => LeadAds\Field::TYPE_INPUT,
			'CRM_NAME' => 'PHONE',
		],
		[
			'CRM_TYPE' => FieldTable::TYPE_ENUM_EMAIL,
			'SEO_TYPE' => LeadAds\Field::TYPE_INPUT,
			'CRM_NAME' => 'EMAIL',
		],
		[
			'CRM_TYPE' => FieldTable::TYPE_ENUM_STRING,
			'SEO_TYPE' => LeadAds\Field::TYPE_INPUT,
			'CRM_NAME' => null,
		],
		[
			'CRM_TYPE' => FieldTable::TYPE_ENUM_TYPED_STRING,
			'SEO_TYPE' => LeadAds\Field::TYPE_INPUT,
			'CRM_NAME' => null,
		],
		[
			'CRM_TYPE' => FieldTable::TYPE_ENUM_LIST,
			'SEO_TYPE' => LeadAds\Field::TYPE_SELECT,
			'CRM_NAME' => null,
		],
		[
			'CRM_TYPE' => FieldTable::TYPE_ENUM_LIST,
			'SEO_TYPE' => LeadAds\Field::TYPE_SELECT,
			'CRM_NAME' => null,
		],
		[
			'CRM_TYPE' => FieldTable::TYPE_ENUM_CHECKBOX,
			'SEO_TYPE' => LeadAds\Field::TYPE_CHECKBOX,
			'CRM_NAME' => null,
		],
		[
			'CRM_TYPE' => FieldTable::TYPE_ENUM_RADIO,
			'SEO_TYPE' => LeadAds\Field::TYPE_RADIO,
			'CRM_NAME' => null,
		],
		[
			'CRM_TYPE' => FieldTable::TYPE_ENUM_TEXT,
			'SEO_TYPE' => LeadAds\Field::TYPE_TEXT_AREA,
			'CRM_NAME' => null,
		],
		[
			'CRM_TYPE' => FieldTable::TYPE_ENUM_PRODUCT,
			'SEO_TYPE' => LeadAds\Field::TYPE_SELECT,
			'CRM_NAME' => null,
		],
		[
			'CRM_TYPE' => FieldTable::TYPE_ENUM_BOOL,
			'SEO_TYPE' => LeadAds\Field::TYPE_SELECT,
			'CRM_NAME' => null,
		],
	];

	foreach ($map as $item)
	{
		if ($crmType && $item['CRM_TYPE'] === $crmType)
		{
			return $item;
		}

		if ($seoType && $item['SEO_TYPE'] === $seoType)
		{
			return $item;
		}
	}

	return null;
}