- Модуль: disk
- Путь к файлу: ~/bitrix/modules/disk/lib/integration/transformermanager.php
- Класс: BitrixDiskIntegrationTransformerManager
- Вызов: TransformerManager::transformToView
static function transformToView(File $file)
{
$view = $file->getView();
if(!Loader::includeModule('transformer'))
{
return false;
}
$transformFormats = array($view->getPreviewExtension());
$transformParams = array('id' => $file->getId(), 'fileId' => $file->getFileId(), 'queue' => BitrixMainUIViewerTransformationTransformerManager::QUEUE_NAME);
$viewExtension = $view->getViewExtension();
$fileExtension = mb_strtolower($file->getExtension());
if($view::isAlwaysTransformToViewFormat())
{
$transformFormats[] = $viewExtension;
}
elseif($fileExtension != $viewExtension && !in_array($fileExtension, $view::getAlternativeExtensions()))
{
$transformFormats[] = $viewExtension;
}
$transformer = self::getTransformerByFormat($viewExtension);
if($transformer)
{
$result = $transformer->transform((int)$file->getFileId(), $transformFormats, self::MODULE_ID, [self::className(), CallbackHandler::class], $transformParams);
return($result->isSuccess());
}
return false;
}