- Модуль: intranet
- Путь к файлу: ~/bitrix/modules/intranet/lib/integration/wizards/portal/ids.php
- Класс: BitrixIntranetIntegrationWizardsPortalIds
- Вызов: Ids::getDiskStorageId
static function getDiskStorageId(string $code, ?string $siteId = null): ?string
{
$siteId = $siteId ?: SITE_ID;
if (empty(self::$diskIds))
{
$cacheId = 'diskIds';
$val = self::getFormCache($cacheId);
if (!is_array($val) && MainLoader::IncludeModule('disk'))
{
if ($code === 'MANAGE_STORAGE_ID')
{
$storage = BitrixDiskStorage::getList([
'select' => ['ID'],
'filter' => ['ENTITY_ID' => "directors_files_" . $siteId, 'SITE_ID' => $siteId],
])->fetch();
$val['MANAGE_STORAGE_ID'] = $storage['ID'] ?? '0';
}
elseif ($code === 'SHARED_STORAGE_ID')
{
$commonStorage = BitrixDiskDriver::getInstance()->getStorageByCommonId('shared_files_'
. $siteId);
$val['SHARED_STORAGE_ID'] = $commonStorage ? $commonStorage->getId() : '0';
}
elseif ($code === 'SALE_STORAGE_ID')
{
$storage = BitrixDiskStorage::getList([
'select' => ['ID'],
'filter' => ['ENTITY_ID' => "sales_files_" . $siteId, 'SITE_ID' => $siteId],
])->fetch();
$val['SALE_STORAGE_ID'] = $storage['ID'] ?? '0';
}
self::putIntoCache($cacheId, $val);
}
self::$diskIds = $val;
}
return isset(self::$diskIds[$code]) ? (string)self::$diskIds[$code] : null;
}