- Модуль: clouds
- Путь к файлу: ~/bitrix/modules/clouds/classes/general/storage.php
- Класс: CCloudStorage
- Вызов: CCloudStorage::CleanUp
static function CleanUp()
{
$buckets = array();
$date = new BitrixMainTypeDateTime();
$date->add("-1D");
$savedFiles = BitrixCloudsFileSaveTable::getList(array(
"filter" => array(
" $date,
),
));
while ($saveFile = $savedFiles->fetchObject())
{
$dbFile = CFile::GetList(array(), array(
"EXTERNAL_ID" => $saveFile->getExternalId(),
"SUBDIR" => $saveFile->getSubdir(),
"FILE_NAME" => $saveFile->getFileName(),
"HANDLER_ID" => $saveFile->getBucketId(),
));
if ($dbFile->Fetch())
{
$saveFile->delete();
}
else
{
$bucketId = $saveFile->getBucketId();
if (!isset($buckets[$bucketId]))
{
$buckets[$bucketId] = new CCloudStorageBucket($bucketId);
}
$bucket = $buckets[$bucketId];
if ($bucket->Init())
{
$filePath = "/".$saveFile->getSubdir()."/".$saveFile->getFileName();
if ($bucket->DeleteFile($filePath))
{
$fileSize = $saveFile->getFileSize();
if ($fileSize >= 0)
{
$bucket->DecFileCounter($fileSize);
}
}
$saveFile->delete();
}
}
}
CCloudStorageUpload::CleanUp();
return "CCloudStorage::CleanUp();";
}