• Модуль: calendar
  • Путь к файлу: ~/bitrix/modules/calendar/lib/controller/calendarentryajax.php
  • Класс: BitrixCalendarControllerCalendarEntryAjax
  • Вызов: CalendarEntryAjax::hasArrayEntriesInRange
protected function hasArrayEntriesInRange(array $entries, int $yearFrom, int $monthFrom, int $yearTo, int $monthTo): bool
{
	$monthsFrom = $yearFrom * 12 + $monthFrom;
	$monthsTo = $yearTo * 12 + $monthTo;
	$settings = UserSettings::get();
	$showDeclined = $settings['showDeclined'];
	foreach ($entries as $entry)
	{
		if (!$showDeclined && $entry['MEETING_STATUS'] === 'N')
		{
			continue;
		}

		$timestamp = strtotime($entry['DATE_FROM']);
		$entryYear = (int)date('Y', $timestamp);
		$entryMonth = (int)date('m', $timestamp);
		$entryMonths = $entryYear * 12 + $entryMonth;

		if ($entryMonths >= $monthsFrom && $entryMonths <= $monthsTo)
		{
			return true;
		}
	}
	return false;
}