• Модуль: disk
  • Путь к файлу: ~/bitrix/modules/disk/lib/uf/calendareventconnector.php
  • Класс: BitrixDiskUfCalendarEventConnector
  • Вызов: CalendarEventConnector::getDataToShowByUser
public function getDataToShowByUser(int $userId)
{
	$event = CCalendarEvent::getById($this->entityId);
	if(empty($event))
	{
		return array();
	}
	$members = array();
	if ($event['IS_MEETING'])
	{
		if(is_array($event['ATTENDEE_LIST']))
		{
			$userIndex = CCalendarEvent::getUserIndex();
			foreach($event['ATTENDEE_LIST'] as $attendee)
			{
				if (isset($userIndex[$attendee["id"]]))
				{
					$members[] = array(
						"NAME" => $userIndex[$attendee["id"]]['DISPLAY_NAME'],
						"LINK" => $userIndex[$attendee["id"]]['URL'],
						'AVATAR_SRC' => $userIndex[$attendee["id"]]['AVATAR'],
						"IS_EXTRANET" => "N",
					);
				}
			}
		}
		if(is_array($event['~ATTENDEES']))
		{
			foreach($event['~ATTENDEES'] as $user)
			{
				$members[] = array(
					"NAME" => $user['DISPLAY_NAME'],
					"LINK" => CComponentEngine::makePathFromTemplate($this->getPathToUser(), array("user_id" => $user['USER_ID'])),
					'AVATAR_SRC' => $user['AVATAR'],
					"IS_EXTRANET" => "N",
				);
			}
		}
	}
	else
	{
		$userRow = CUser::getList(
			'ID',
			'ASC',
			array("ID_EQUAL_EXACT" => $event['CREATED_BY'], "ACTIVE" => "Y"),
			array("SELECT" => array(
				'ID', 'NAME', 'LAST_NAME', 'LOGIN', 'PERSONAL_PHOTO',
			))
		)->fetch();

		if($userRow)
		{
			$name = trim($userRow['NAME'].' '.$userRow['LAST_NAME']);
			if ($name == '')
			{
				$name = trim($userRow['LOGIN']);
			}
			$members[] = array(
				"NAME" => $name,
				"LINK" => CComponentEngine::makePathFromTemplate($this->getPathToUser(), array("user_id" => $event['CREATED_BY'])),
				'AVATAR_SRC' => UiAvatar::getPerson($userRow['PERSONAL_PHOTO']),
				"IS_EXTRANET" => "N",
			);
		}
	}

	return array(
		'TITLE' => Loc::getMessage('DISK_UF_CAL_EVENT_CONNECTOR_TITLE').": ".$event['NAME'],
		'DETAIL_URL' => CHTTP::urlAddParams(CCalendar::GetPath($event['CAL_TYPE'], $event['OWNER_ID'], true), array('EVENT_ID' => $event['ID'])),
		'DESCRIPTION' => UiText::killTags($event['DESCRIPTION']),
		'MEMBERS' => $members
	);
}