• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/order/matcher/fieldsynchronizer.php
  • Класс: Bitrix\Crm\Order\Matcher\FieldSynchronizer
  • Вызов: FieldSynchronizer::prepareSimilarFields
static function prepareSimilarFields($field)
{
	$prepared = [
		'ACTIVE' => 'Y',
		'UTIL' => 'N',
		'TYPE' => static::getSaleFieldType($field['TYPE']),
		'NAME' => (string)$field['CAPTION'],
		'DEFAULT_VALUE' => is_array($field['VALUE']) ? $field['VALUE'] : (string)$field['VALUE'],
		'SORT' => (int)$field['SORT'],
		'DESCRIPTION' => (string)$field['PLACEHOLDER'],
		'ITEMS' => isset($field['ITEMS']) ? $field['ITEMS'] : []
	];

	$fieldsToUpdate = [
		'MULTIPLE', 'REQUIRED', 'USER_PROPS',
		'IS_PROFILE_NAME', 'IS_PAYER', 'IS_EMAIL', 'IS_PHONE', 'IS_ZIP', 'IS_ADDRESS'
	];

	foreach ($fieldsToUpdate as $fieldToUpdate)
	{
		if (isset($field[$fieldToUpdate]))
		{
			$prepared[$fieldToUpdate] = $field[$fieldToUpdate] === 'Y' ? 'Y' : 'N';
		}
	}

	return $prepared;
}