• Модуль: disk
  • Путь к файлу: ~/bitrix/modules/disk/lib/document/googlehandler.php
  • Класс: BitrixDiskDocumentGoogleHandler
  • Вызов: GoogleHandler::getDataForViewFile
public function getDataForViewFile(FileData $fileData)
{
	$newFile = $this->createByResumableUpload($fileData, $lastStatus, $metadata);
	if(!$newFile)
	{
		//retry upload, but not convert content
		if($lastStatus == '500')
		{
			$fileData->setNeedConvert(false);
			$newFile = $this->createByResumableUpload($fileData, $lastStatus, $metadata);
		}
	}

	if($newFile === null)
	{
		$this->errorCollection[] = new Error(
			Loc::getMessage('DISK_GOOGLE_HANDLER_ERROR_COULD_NOT_VIEW_FILE'), self::ERROR_COULD_NOT_VIEW_FILE
		);
		return null;
	}

	$this->insertPermission($newFile, self::PERMISSION_ROLE_READER, self::PERMISSION_TYPE_ANYONE);
	$embedFileLink = $this->getEmbedFileLink($fileData)?: $metadata['webViewLink'];

	if(!empty($metadata['createdTime']))
	{
		$this->patchFile($fileData, array('modifiedTime' => $metadata['createdTime']));
	}

	$updatedMetadata = $this->getFileMetadata($fileData);
	$fileData->setMetaData($updatedMetadata);

	ShowSession::register($this, $fileData, $this->errorCollection);

	return array(
		'id' => $newFile->getId(),
		'viewUrl' => $embedFileLink,
		'neededDelete' => true,
		'neededCheckView' => false,
	);
}