- Модуль: clouds
- Путь к файлу: ~/bitrix/modules/clouds/classes/general/storage_upload.php
- Класс: CCloudStorageUpload
- Вызов: CCloudStorageUpload::Next
function Next($data, $obBucket = null)
{
global $APPLICATION;
if($this->isStarted())
{
$ar = $this->GetArray();
if($obBucket == null)
$obBucket = new CCloudStorageBucket(intval($ar["BUCKET_ID"]));
if(!$obBucket->Init())
{
$APPLICATION->ThrowException(GetMessage('CLO_STORAGE_UPLOAD_ERROR', array('#errno#'=>1)));
return false;
}
$arUploadInfo = unserialize($ar["NEXT_STEP"], ['allowed_classes' => false]);
$bSuccess = $obBucket->GetService()->UploadPart(
$obBucket->GetBucketArray(),
$arUploadInfo,
$data
);
if (!$bSuccess)
{
$error = $obBucket->GetService()->formatError();
if ($error)
{
$APPLICATION->ThrowException($error);
}
}
if (!$this->UpdateProgress($arUploadInfo, $bSuccess))
{
$APPLICATION->ThrowException(GetMessage('CLO_STORAGE_UPLOAD_ERROR', array('#errno#'=>2)));
return false;
}
return $bSuccess;
}
return false;
}