• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/webform/fieldsynchronizer.php
  • Класс: Bitrix\Crm\WebForm\FieldSynchronizer
  • Вызов: FieldSynchronizer::replaceField
protected function replaceField(&$fields, $entityField)
{
	$oldFieldCode = $entityField['OLD_FIELD_CODE'];
	$newFieldCode = $entityField['NEW_FIELD_CODE'];
	if(!$newFieldCode || isset($fields[$newFieldCode]))
	{
		return;
	}

	// replace field codes and items
	$field = $fields[$oldFieldCode];
	if (!empty($field['CODE']))
	{
		$field['CODE'] = $newFieldCode;
	}
	$fields[$newFieldCode] = $field;
	if(!$fields[$newFieldCode]['ITEMS'])
	{
		return;
	}
	if(!$entityField['OLD_FIELD']['items'])
	{
		return;
	}
	if(!$entityField['NEW_FIELD']['items'])
	{
		return;
	}

	$this->replaceFieldItems(
		$fields[$newFieldCode],
		$entityField['OLD_FIELD']['items'],
		$entityField['NEW_FIELD']['items']
	);
}