• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/integration/iblockelementproperty.php
  • Класс: Bitrix\Crm\Integration\IBlockElementProperty
  • Вызов: IBlockElementProperty::getSettingsHTML
static function getSettingsHTML($property, $controlSettings, &$propertyFields)
{
	$html = '';

	if (!is_array($property['USER_TYPE_SETTINGS']))
	{
		$property['USER_TYPE_SETTINGS'] = array_merge(
			\Bitrix\Crm\Integration\BizProc\FieldType\Crm::getDefaultFieldSettings(),
			static::$listDefaultEntity
		);
	}
	$property['USER_TYPE_SETTINGS']['VISIBLE'] = $property['USER_TYPE_SETTINGS']['VISIBLE'] ?? 'Y';

	$callbackFunction = $controlSettings['CALLBACK_FUNCTION'] ?? 'console.log';
	$settings = $property['USER_TYPE_SETTINGS'];
	$settings['buttonLabel'] = Loc::getMessage('CRM_IBLOCK_PROPERTY_ENTITY_SAVE');
	$settings['settingsName'] = $controlSettings["NAME"];
	$settings['isAssociativeValues'] = true;
	$settings['collectSettingsFunctionName'] = 'WFSFormOptionsECrm';
	$htmlPieces = \Bitrix\Crm\Integration\BizProc\FieldType\Crm::renderSettingsHtmlPieces(
		$callbackFunction,
		$settings
	);

	$useBp = !empty($controlSettings['USE_BP']) && isset($controlSettings['CALLBACK_FUNCTION']);

	$html .= '';
	if (!$useBp)
	{
		$html .= ''.Loc::getMessage('CRM_IBLOCK_PROPERTY_SETTINGS_LABLE_ENTITY').'';
	}
	$html .= '';
	$html .= $htmlPieces['inputs'];
	$html .= '';

	if($useBp)
	{
		$html .= $htmlPieces['button'];
		$html .= "";
	}
	else
	{
		$html .= '';
		$html .= ''.Loc::getMessage('CRM_IBLOCK_PROPERTY_SETTINGS_LABLE_VISIBLE').'';
		$html .= '';
		$html .= '';
	}

	return $html;
}