• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/synchronization/userfieldlabelsynchronizer.php
  • Класс: Bitrix\Crm\Synchronization\UserFieldLabelSynchronizer
  • Вызов: UserFieldLabelSynchronizer::onUserFieldUpdate
static function onUserFieldUpdate(array $changedFields, $ID)
{
	if($ID <= 0)
	{
		return;
	}

	//Skip locked field (for prevent loop)
	if($ID <= 0 || self::isFieldLocked($ID))
	{
		return;
	}

	if(!isset($changedFields['EDIT_FORM_LABEL'])
		&& !isset($changedFields['LIST_COLUMN_LABEL'])
		&& !isset($changedFields['LIST_FILTER_LABEL'])
	)
	{
		return;
	}

	$fields = \CUserTypeEntity::GetByID($ID);
	if(is_array($fields) && isset($fields['ENTITY_ID']) && isset($fields['FIELD_NAME']))
	{
		$fieldData = array();
		if(isset($changedFields['EDIT_FORM_LABEL']))
		{
			$fieldData['EDIT_FORM_LABEL'] = $changedFields['EDIT_FORM_LABEL'];
		}
		if(isset($changedFields['LIST_COLUMN_LABEL']))
		{
			$fieldData['LIST_COLUMN_LABEL'] = $changedFields['LIST_COLUMN_LABEL'];
		}
		if(isset($changedFields['LIST_FILTER_LABEL']))
		{
			$fieldData['LIST_FILTER_LABEL'] = $changedFields['LIST_FILTER_LABEL'];
		}

		self::synchronize($fields['ENTITY_ID'], $fields['FIELD_NAME'], array('FIELD_DATA' => $fieldData));
	}
}