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

	$storageModel = false;
	if ($storageId = self::GetStorageId())
	{
		$storageModel = BitrixDiskStorage::loadById($storageId);
		if (!$storageModel || $storageModel->getModuleId() != self::MODULE_ID)
		{
			$storageModel = false;
		}
	}

	if (!$storageModel)
	{
		$data = [
			'NAME' => Loc::getMessage('IM_DISK_STORAGE_TITLE'),
			'USE_INTERNAL_RIGHTS' => 1,
			'MODULE_ID' => self::MODULE_ID,
			'ENTITY_TYPE' => IMDiskProxyTypeIm::className(),
			'ENTITY_ID' => self::MODULE_ID,
		];

		$driver = BitrixDiskDriver::getInstance();

		// allow access for all on the top folder
		$storageModel = $driver->addStorageIfNotExist($data);
		if ($storageModel)
		{
			self::SetStorageId($storageModel->getId());
		}
		else
		{
			$storageModel = false;
		}
	}

	return $storageModel;
}