• Модуль: calendar
  • Путь к файлу: ~/bitrix/modules/calendar/lib/rooms/occupancychecker.php
  • Класс: BitrixCalendarRoomsOccupancyChecker
  • Вызов: OccupancyChecker::getExistingEvents
protected function getExistingEvents(int $roomId, array $event)
{
	$arSelect = [
		'ID',
		'RRULE',
		'DT_SKIP_TIME',
		'DT_LENGTH',
		'PARENT_ID',
		'DATE_FROM',
		'DATE_TO',
		'PARENT_ID',
		'TZ_FROM',
		'TZ_TO',
		'TZ_OFFSET_FROM',
		'TZ_OFFSET_TO',
		'DATE_FROM_TS_UTC',
		'DATE_TO_TS_UTC',
		'CREATED_BY',
		'ACCESSIBILITY',
		'REMIND',
		'MEETING_HOST',
		'MEETING_STATUS',
		'IMPORTANCE',
	];

	$toLimit = $this->getCheckLimit($event);

	return CCalendarEvent::GetList(
		[
			'arSelect' => $arSelect,
			'arFilter' => [
				'SECTION' => [$roomId],
				'FROM_LIMIT' => $event['DATE_FROM'],
				'TO_LIMIT' => DateTime::createFromTimestamp($toLimit)->toString(),
				'DELETED' => 'N',
				'ACTIVE' => 'Y'
			],
			'parseRecursion' => true,
			'fetchAttendees' => false,
			'fetchMeetings' => false,
			'setDefaultLimit' => false,
			'limit' => null,
			'checkPermissions' => false,
			'parseDescription' => false,
			'fetchSection' => false,
			'getUserfields' => false,
		]
	);
}