• Модуль: tasks
  • Путь к файлу: ~/bitrix/modules/tasks/lib/scrum/controllers/calendar.php
  • Класс: BitrixTasksScrumControllersCalendar
  • Вызов: Calendar::getMeetingsAction
public function getMeetingsAction(int $groupId): ?array
{
	if (!Loader::includeModule('im'))
	{
		$this->errorCollection->setError(
			new Error(
				Loc::getMessage('TASKS_CC_ERROR_INCLUDE_MODULE_ERROR'),
				self::ERROR_COULD_NOT_LOAD_MODULE
			)
		);

		return null;
	}

	$userId = User::getId();

	$backlogService = new BacklogService();

	$backlog = $backlogService->getBacklogByGroupId($groupId);

	$info = $backlog->getInfo();

	$mapCreatedEvents = $this->getMapCreatedEventsByTemplate($info->getEvents());

	$listEvents = $this->getUpcomingEventsForThisProject($groupId);

	$chats = $this->getEventChats($userId, $listEvents);

	[$listEvents, $todayEvent] = $this->getEventForToday($listEvents);

	$defaultSprintDuration = $this->getDefaultSprintDuration($groupId);

	$culture = Context::getCurrent()->getCulture();

	return [
		'mapCreatedEvents' => $mapCreatedEvents,
		'todayEvent' => (empty($todayEvent) ? null : $todayEvent),
		'listEvents' => array_values($listEvents),
		'isTemplatesClosed' => $info->isTemplatesClosed(),
		'chats' => $chats,
		'defaultSprintDuration' => $defaultSprintDuration,
		'calendarSettings' => $this->getCalendarSettings($defaultSprintDuration),
		'culture'=> [
			'dayMonthFormat' => $culture->getDayMonthFormat(),
			'longDateFormat' => $culture->getLongDateFormat(),
			'shortTimeFormat' => $culture->getShortTimeFormat(),
		],
	];
}