• Модуль: calendar
  • Путь к файлу: ~/bitrix/modules/calendar/classes/general/calendar_event.php
  • Класс: CCalendarEvent
  • Вызов: CCalendarEvent::GetEventCommentXmlId
static function GetEventCommentXmlId($event)
{
	if (isset($event['RELATIONS']['ORIGINAL_RECURSION_ID']))
	{
		$date = CCalendar::Date(CCalendar::Timestamp($event['DATE_FROM']), false);
		return "EVENT_{$event['RELATIONS']['ORIGINAL_RECURSION_ID']}_$date";
	}
	if (isset($event['ORIGINAL_DATE_FROM'], $event['RECURRENCE_ID']))
	{
		$date = CCalendar::Date(CCalendar::Timestamp($event['ORIGINAL_DATE_FROM']), false);
		return "EVENT_{$event['RECURRENCE_ID']}_$date";
	}

	$commentXmlId = "EVENT_" . ($event['PARENT_ID'] ?? $event['ID']);

	if (
		self::CheckRecurcion($event)
		&& (!isset($event['RINDEX']) || $event['RINDEX'] > 0)
		&& (CCalendar::Date(CCalendar::Timestamp($event['DATE_FROM']), false)
			!== CCalendar::Date(CCalendar::Timestamp($event['~DATE_FROM'] ?? null), false))
	)
	{
		$commentXmlId .= '_'.CCalendar::Date(CCalendar::Timestamp($event['DATE_FROM']), false);
	}

	return $commentXmlId;
}