• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/integration/calendar/calendarsharingtimeline.php
  • Класс: Bitrix\Crm\Integration\Calendar\CalendarSharingTimeline
  • Вызов: CalendarSharingTimeline::createTimelineEntry
static function createTimelineEntry(EventData $eventData)
{
	$item = Container::getInstance()
		->getFactory($eventData->getEntityTypeId())
		->getItem($eventData->getEntityId())
	;

	if (!$item)
	{
		return;
	}

	$controller = Controller::getInstance();
	$itemIdentifier = ItemIdentifier::createByItem($item);

	switch ($eventData->getEventType())
	{
		case EventData::SHARING_ON_NOT_VIEWED:
			$controller->onNotViewed($itemIdentifier, $eventData);
			break;
		case EventData::SHARING_ON_VIEWED:
			$controller->onViewed($itemIdentifier, $eventData);
			break;
		case EventData::SHARING_ON_EVENT_CREATED:
			$controller->onEventCreated($itemIdentifier, $eventData);
			break;
		case EventData::SHARING_ON_EVENT_DOWNLOADED:
			$controller->onEventDownloaded($itemIdentifier, $eventData);
			break;
		case EventData::SHARING_ON_INVITATION_SENT:
			$controller->onInvitationSent($itemIdentifier, $eventData);
			break;
		case EventData::SHARING_ON_EVENT_CONFIRMED:
			$controller->onEventConfirmed($itemIdentifier, $eventData);
			break;
		case EventData::SHARING_ON_LINK_COPIED:
			$controller->onLinkCopied($itemIdentifier, $eventData);
			break;
	}
}