- Модуль: disk
- Путь к файлу: ~/bitrix/modules/disk/lib/uf/controller.php
- Класс: BitrixDiskUfController
- Вызов: Controller::listStorages
protected function listStorages()
{
$userStorage = Driver::getInstance()->getStorageByUserId($this->getUser()->getId());
if(!$userStorage)
{
$this->errorCollection->add(array(new Error('Could not find storage for current user')));
return null;
}
$urlUfController = Driver::getInstance()->getUrlManager()->getUrlUfController('loadItems');
$list = array(
'recently_used' => array(
'id' => 'recently_used',
'name' => Loc::getMessage('DISK_UF_CONTROLLER_RECENTLY_USED'),
'type' => 'recently_used',
'link' => $urlUfController,
),
$userStorage->getId() => array(
'id' => $userStorage->getId(),
'rootObjectId' => $userStorage->getRootObjectId(),
'name' => $userStorage->getProxyType()->getTitleForCurrentUser(),
'type' => 'user',
'link' => $urlUfController,
),
);
foreach($this->getUserGroupWithStorage() as $group)
{
if(empty($group['STORAGE']))
{
continue;
}
/** @var Storage $storage */
$storage = $group['STORAGE'];
$list[$storage->getId()] = array(
'id' => $storage->getId(),
'rootObjectId' => $storage->getRootObjectId(),
'name' => $group['NAME'],
'type' => 'group',
'link' => $urlUfController,
);
}
unset($group, $storage);
foreach($this->getCommonStorages() as $common)
{
$list[$common->getId()] = array(
'id' => $common->getId(),
'rootObjectId' => $common->getRootObjectId(),
'name' => $common->getName(),
'type' => 'common',
'link' => $urlUfController,
);
}
unset($common);
return $list;
}