- Модуль: mobile
- Путь к файлу: ~/bitrix/modules/mobile/classes/general/mobile_helper.php
- Класс: CMobileHelper
- Вызов: CMobileHelper::InitFileStorage
static function InitFileStorage()
{
static $bInited = false;
$arResult = array();
if (!$bInited)
{
$bDiskEnabled = (
BitrixMainConfigOption::get('disk', 'successfully_converted', false)
&& CModule::includeModule('disk')
);
if ($bDiskEnabled)
{
$storage = BitrixDiskDriver::getInstance()->getStorageByUserId($GLOBALS["USER"]->GetID());
if (!$storage)
{
$arResult = array(
"ERROR_CODE" => "NO_DISC_STORAGE",
"ERROR_MESSAGE" => "No disk storage"
);
}
else
{
$folder = $storage->getFolderForUploadedFiles($GLOBALS["USER"]->GetID());
if (!$folder)
{
$arResult = array(
"ERROR_CODE" => "NO_DISC_FOLDER",
"ERROR_MESSAGE" => "No disk folder"
);
}
else
{
$arResult = array(
"DISC_STORAGE" => $storage,
"DISC_FOLDER" => $folder
);
}
}
}
elseif (CModule::IncludeModule("webdav"))
{
$data = CWebDavIblock::getRootSectionDataForUser($GLOBALS["USER"]->GetID());
if (is_array($data))
{
$ob = new CWebDavIblock($data["IBLOCK_ID"], "", array(
"ROOT_SECTION_ID" => $data["SECTION_ID"],
"DOCUMENT_TYPE" => array("webdav", 'CIBlockDocumentWebdavSocnet', 'iblock_'.$data['SECTION_ID'].'_user_'.intval($GLOBALS["USER"]->GetID()))
));
}
if (!$ob)
{
$arResult = array(
"ERROR_CODE" => "NO_WEBDAV_SECTION",
"ERROR_MESSAGE" => "No webdav section"
);
}
else
{
$arResult = array(
"WEBDAV_DATA" => $data,
"WEBDAV_IBLOCK_OBJECT" => $ob
);
}
}
$bInited = true;
}
return $arResult;
}