• Модуль: tasks
  • Путь к файлу: ~/bitrix/modules/tasks/lib/checklist/checklistfacade.php
  • Класс: BitrixTasksCheckListCheckListFacade
  • Вызов: CheckListFacade::processItemMembers
static function processItemMembers($item, $items, $select)
{
	$processedItem = $item;

	if (empty($select) || in_array('MEMBERS', $select, true))
	{
		$processedItem['MEMBERS'] = [];

		$id = $processedItem['ID'];
		$userId = $processedItem['USER_ID'] ?? null;

		if (
			isset($userId)
			|| (
				array_key_exists($id, $items)
				&& $items[$id]
			)
		)
		{
			$userFields = [];

			foreach (static::$memberFields as $field)
			{
				$userFields[str_replace('USER_', '', $field)] = $processedItem[$field];
			}

			$member = [
				'TYPE' => $processedItem['USER_TYPE'],
				'NAME' => User::formatName($userFields),
			];

			if (isset($items[$id]))
			{
				$items[$id]['MEMBERS'][$userId] = $member;
				return $items[$id];
			}

			$processedItem['MEMBERS'][$userId] = $member;
		}

		foreach (static::$memberFields as $field)
		{
			unset($processedItem[$field]);
		}
	}

	return $processedItem;
}