• Модуль: ui
  • Путь к файлу: ~/bitrix/modules/ui/lib/FileUploader/TempFile.php
  • Класс: BitrixUIFileUploaderTempFile
  • Вызов: TempFile::createTempFile
static function createTempFile(Chunk $chunk, UploaderController $controller, $bucket = null): TempFile
{
	$tempFile = new TempFile();
	$tempFile->setFilename($chunk->getName());
	$tempFile->setMimetype($chunk->getType());
	$tempFile->setSize($chunk->getFileSize());
	$tempFile->setReceivedSize($chunk->getSize());
	$tempFile->setWidth($chunk->getWidth());
	$tempFile->setHeight($chunk->getHeight());
	$tempFile->setModuleId($controller->getModuleId());
	$tempFile->setController($controller->getName());

	if ($bucket)
	{
		$path = self::generateCloudTempDir($bucket);
	}
	else
	{
		$path = $chunk->getFile()->getPhysicalPath();
		$tempRoot = CTempFile::getAbsoluteRoot();
		$path = mb_substr($path, mb_strlen($tempRoot));
	}

	$tempFile->setPath($path);

	if ($bucket)
	{
		$tempFile->setCloud(true);
		$tempFile->setBucketId($bucket->ID);
	}

	$tempFile->save();

	return $tempFile;
}