• Модуль: tasks
  • Путь к файлу: ~/bitrix/modules/tasks/lib/grid/task/row/content/userfield.php
  • Класс: BitrixTasksGridTaskRowContentUserField
  • Вызов: UserField::prepare
public function prepare(): string
{
	$row = $this->getRowData();
	$parameters = $this->getParameters();

	$fieldName = $parameters['USER_FIELD_NAME'];

	if ($fieldName === 'UF_CRM_TASK')
	{
		return (new UserFieldCrm($row, $parameters))->prepare();
	}

	$fieldValue = $row[$fieldName] ?? '';
	$userFieldData = $parameters['UF'][$fieldName];

	if ($userFieldData['USER_TYPE_ID'] !== 'boolean' && empty($fieldValue) && $fieldValue !== '0')
	{
		return Loc::getMessage('TASKS_GRID_TASK_ROW_CONTENT_USER_FIELD_NOT_PRESENT') ?? '';
	}

	if ($userFieldData['USER_TYPE_ID'] === 'boolean')
	{
		$messagePostfix = (empty($fieldValue) ? 'NO' : 'YES');
		$fieldValue = Loc::getMessage("TASKS_GRID_TASK_ROW_CONTENT_USER_FIELD_BOOLEAN_{$messagePostfix}");
	}

	if (is_array($fieldValue))
	{
		return implode(', ', array_map(
			static function($item) {
				return htmlspecialcharsbx($item);
			},
			$fieldValue
		));
	}

	return htmlspecialcharsbx($fieldValue);
}