• Модуль: disk
  • Путь к файлу: ~/bitrix/modules/disk/lib/controller/onlyoffice.php
  • Класс: BitrixDiskControllerOnlyOffice
  • Вызов: OnlyOffice::endSessionAction
public function endSessionAction(ModelsDocumentSession $session): array
{
	if ($session->isEdit())
	{
		$countActiveSessions = $session->countActiveSessions();
		$documentInfo = $session->getInfo();
		if ($countActiveSessions <= 1 && $session->isActive())
		{
			if ($documentInfo)
			{
				$documentInfo->setUserCount(0);
			}
		}

		return [
			'mode' => 'edit',
			'file' => [
				'id' => $session->getObject()->getId(),
				'name' => $session->getObject()->getName(),
			],
			'documentSessionInfo' => [
				'contentStatus' => $documentInfo? $documentInfo->getContentStatus() : null,
				'isFinished' => $documentInfo && $documentInfo->isFinished(),
			],
			'activeSessions' => $countActiveSessions,
		];
	}

	return [
		'mode' => 'view',
	];
}