• Модуль: disk
  • Путь к файлу: ~/bitrix/modules/disk/lib/file.php
  • Класс: BitrixDiskFile
  • Вызов: File::attachImagePreview
public function attachImagePreview(array $previewFileData): MainResult
{
	$result = new MainResult();
	if (!CFile::isImage($previewFileData['name'], $previewFileData['type']))
	{
		$result->addError(new Error('Preview is not an image'));

		return $result;
	}

	$previewFileData['MODULE_ID'] = 'main';
	$previewId = CFile::saveFile($previewFileData, 'main_preview', true, true);
	if (!$previewId)
	{
		$result->addError(new Error('Could not save preview to b_file'));

		return $result;
	}

	$resultPreview = (new MainUIViewerPreviewManager())->setPreviewImageId($this->getFileId(), $previewId);
	if (!$resultPreview->isSuccess())
	{
		$result->addErrors($resultPreview->getErrors());
		CFile::delete($previewId);
	}

	return $result;
}