- Модуль: 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,
);
}