• Модуль: tasks
  • Путь к файлу: ~/bitrix/modules/tasks/lib/util/userfield/ui.php
  • Класс: BitrixTasksUtilUserFieldUI
  • Вызов: UI::showUI
static function showUI($componentName, array $field, array $parameters = array(), $parentComponentInstance = null)
{
	if (!(int)($field['ENTITY_VALUE_ID'] ?? null))
	{
		$useDefault = false;
		$valueEmpty = isset($field['VALUE']) ? UserField::isValueEmpty($field['VALUE']) : true;

		if ((($parameters['PREFER_DEFAULT'] ?? null) || (isset($field['MANDATORY']) && $field['MANDATORY'] == 'Y')) && $valueEmpty)
		{
			$useDefault = true;
		}

		// just to make uf logic work
		$field['ENTITY_VALUE_ID'] = !$useDefault;
	}

	if (isset($field['VALUE']) && Collection::isA($field['VALUE']))
	{
		$field['VALUE'] = $field['VALUE']->toArray();
	}

	$parameters = array_merge(
		$parameters,
		[
			'bVarsFromForm' => false,
			'arUserField' => $field,
			'DISABLE_LOCAL_EDIT' => ($parameters['PUBLIC_MODE'] ?? null)
		]
	);

	$GLOBALS['APPLICATION']->IncludeComponent(
		$componentName,
		$field["USER_TYPE"]["USER_TYPE_ID"] ?? '',
		$parameters,
		$parentComponentInstance,
		array("HIDE_ICONS" => "Y")
	);
}