• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/lib/ui/viewer/previewmanager.php
  • Класс: BitrixMainUIViewerPreviewManager
  • Вызов: PreviewManager::sendPreviewContent
protected function sendPreviewContent($file, $options): ?ResponseBFile
{
	$possiblePreviewFileId = $this->unsignFileId($this->httpRequest->get(self::GET_KEY_TO_SEND_PREVIEW_CONTENT));
	$filePreview = $this->getFilePreviewEntryByFileId($file['ID']);
	if (!$filePreview || empty($filePreview['PREVIEW_ID']) || $filePreview['PREVIEW_ID'] != $possiblePreviewFileId)
	{
		return null;
	}

	FilePreviewTable::update($filePreview['ID'], [
		'TOUCHED_AT' => new DateTime(),
	]);

	//get name for preview file
	return ResponseBFile::createByFileId(
		$filePreview['PREVIEW_ID'],
		$file['ORIGINAL_NAME']
	);
}