• Модуль: calendar
  • Путь к файлу: ~/bitrix/modules/calendar/lib/ical/usercontroller.php
  • Класс: BitrixCalendarICalUserController
  • Вызов: UserController::prepareAttendeesData
static function prepareAttendeesData($attendeeIdList, $currentAttendees, $userIndex, $currentUserId)
{
	$attendeesList = [];
	$attendeeIndex = [];
	if (is_array($currentAttendees))
	{
		foreach($currentAttendees as $user)
		{
			$attendeeIndex[$user['USER_ID']] = $user;
		}
	}

	if (is_array($attendeeIdList))
	{
		foreach($attendeeIdList as $userId)
		{
			if (isset($userIndex[$userId]))
			{
				if ($attendeeIndex[$userId])
				{
					$attendeesList[] = [
						'id' => $userIndex[$userId]['ID'],
						'email' => $userIndex[$userId]['EMAIL'],
						'external_auth_id' => $userIndex[$userId]['EXTERNAL_AUTH_ID'],
						'name' => $attendeeIndex[$userId]['DISPLAY_NAME'],
						'status' => $attendeeIndex[$userId]['STATUS']
					];
				}
				else
				{
					$attendeesList[] = [
						'id' => $userIndex[$userId]['ID'],
						'email' => $userIndex[$userId]['EMAIL'],
						'external_auth_id' => $userIndex[$userId]['EXTERNAL_AUTH_ID'],
						'name' => CCalendar::getUserName($userIndex[$userId]),
						'status' => $currentUserId === $userId ? 'H' : 'Q'
					];
				}
			}
		}
	}
	//eventFields['ATTENDEES'], $params['currentAttendees'], $params['userIndex']

	return $attendeesList;
}