• Модуль: im
  • Путь к файлу: ~/bitrix/modules/im/classes/general/im_disk.php
  • Класс: CIMDisk
  • Вызов: CIMDisk::IncreaseFileVersionDisk
static function IncreaseFileVersionDisk($chatId, $fileId, ?int $userId = null)
{
	if (!self::Enabled())
	{
		return false;
	}

	if ((int)$fileId <= 0 || (int)$chatId <= 0)
	{
		return false;
	}

	$fileModel = BitrixDiskFile::getById($fileId, array('STORAGE'));
	if (!$fileModel)
	{
		return false;
	}

	$storageModel = $fileModel->getStorage();
	if (!$storageModel)
	{
		return false;
	}

	$securityContext = null;
	if (is_null($userId))
	{
		$securityContext = $storageModel->getCurrentUserSecurityContext();
	}
	else if ($userId > 0)
	{
		$securityContext = $storageModel->getSecurityContext($userId);
	}

	if ($securityContext && !$fileModel->canRead($securityContext))
	{
		return false;
	}

	$fileModel->increaseGlobalContentVersion();

	return $fileModel;
}