• Модуль: calendar
  • Путь к файлу: ~/bitrix/modules/calendar/lib/util.php
  • Класс: BitrixCalendarUtil
  • Вызов: Util::addPullEvent
static function addPullEvent(string $command, int $userId, array $params = []): bool
{
	if (!Loader::includeModule("pull"))
	{
		return false;
	}

	if (
		in_array($command, [
			'edit_event',
			'delete_event',
			'set_meeting_status',
		])
	)
	{
		CPullWatch::AddToStack(
			'calendar-planner-'.$userId,
			[
				'module_id' => 'calendar',
				'command' => $command,
				'params' => $params
			]
		);
	}

	if (
		in_array($command, [
			'edit_event',
			'delete_event',
			'set_meeting_status',
		])
		&& isset($params['fields'])
		&& isset($params['fields']['SECTION_OWNER_ID'])
		&& (int)$params['fields']['SECTION_OWNER_ID'] !== $userId
	)
	{
		BitrixPullEvent::add(
			(int)$params['fields']['SECTION_OWNER_ID'],
			[
				'module_id' => 'calendar',
				'command' => $command,
				'params' => $params
			]
		);
	}

	return BitrixPullEvent::add(
		$userId,
		[
			'module_id' => 'calendar',
			'command' => $command,
			'params' => $params
		]
	);
}