• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/lib/userfield/dispatcher.php
  • Класс: BitrixMainUserFieldDispatcher
  • Вызов: Dispatcher::createField
public function createField($fieldInfo)
{
	if(!$this->validateFieldChangeRequest($fieldInfo))
	{
		return false;
	}

	$fieldId = $this->createNewField($fieldInfo);

	if($fieldId)
	{
		if($fieldInfo['USER_TYPE_ID'] === CUserTypeEnum::USER_TYPE_ID)
		{
			$this->createNewFieldEnumValues($fieldId, $fieldInfo);
		}

		$addFieldInfo = array(
			'ENTITY_ID' => $fieldInfo['ENTITY_ID'],
			'FIELD' => $fieldInfo['FIELD'],
			'CONTEXT' => $fieldInfo['CONTEXT'] ?? null,
		);

		$addFieldInfo['SIGNATURE'] = $this->getSignature($addFieldInfo);

		$this->storeFieldSignature($addFieldInfo['ENTITY_ID'], $addFieldInfo['FIELD'], $addFieldInfo['SIGNATURE']);

		$this->addField($addFieldInfo);
	}

	return $fieldId > 0;
}