• Модуль: calendar
  • Путь к файлу: ~/bitrix/modules/calendar/lib/sync/google/eventconverter.php
  • Класс: BitrixCalendarSyncGoogleEventConverter
  • Вызов: EventConverter::prepareDate
public function prepareDate(): array
{
	$date = [];

	if ($this->originalEvent->isFullDayEvent())
	{
		$date['start']['date'] = $this->originalEvent->getStart()->format('Y-m-d');
		$date['end']['date'] = $this->originalEvent->getEnd()->add(('+1 day'))->format('Y-m-d');
	}
	else
	{
		$date['start']['dateTime'] = $this->originalEvent->getStart()->format(Helper::DATE_TIME_FORMAT);
		$date['start']['timeZone'] = $this->originalEvent->getStartTimeZone()
			? $this->originalEvent->getStartTimeZone()->getTimeZone()->getName()
			: (new DateTime())->getTimezone()->getName()
		;
		$date['end']['dateTime'] = $this->originalEvent->getEnd()->format(Helper::DATE_TIME_FORMAT);
		$date['end']['timeZone'] = $this->originalEvent->getEndTimeZone()
			? $this->originalEvent->getEndTimeZone()->getTimeZone()->getName()
			: (new DateTime())->getTimezone()->getName()
		;
	}

	if ($this->originalEvent->getOriginalDateFrom() !== null)
	{
		if ($this->originalEvent->isFullDayEvent())
		{
			$event['originalStartTime']['date'] = $this->originalEvent->getOriginalDateFrom()->format(Helper::DATE_FORMAT);
		}
		else
		{
			$event['originalStartTime']['dateTime'] = $this->originalEvent->getOriginalDateFrom()->format(Helper::DATE_TIME_FORMAT);
		}
	}

	return $date;
}