• Модуль: tasks
  • Путь к файлу: ~/bitrix/modules/tasks/lib/integration/disk.php
  • Класс: BitrixTasksIntegrationDisk
  • Вызов: Disk::deleteUnattachedFiles
static function deleteUnattachedFiles(array $files, $userId = 0)
{
	if(empty($files))
	{
		return;
	}

	if(!static::includeModule())
	{
		return;
	}

	if(!$userId)
	{
		$userId = User::getId();
	}

	foreach($files as $fileValue)
	{
		list($type, $fileValue) = FileUserType::detectType($fileValue);
		if($type != FileUserType::TYPE_NEW_OBJECT)
		{
			continue;
		}

		/** @var File $file */
		$file = File::loadById($fileValue);
		if(!$file)
		{
			continue;
		}

		$securityContext = $file->getStorage()->getSecurityContext($userId);
		if(!$file->canDelete($securityContext))
		{
			continue;
		}

		$file->delete($userId);
	}
	unset($file);
}