• Модуль: disk
  • Путь к файлу: ~/bitrix/modules/disk/lib/controller/file.php
  • Класс: BitrixDiskControllerFile
  • Вызов: File::get
protected function get(DiskBaseObject $file)
{
	if (!($file instanceof DiskFile))
	{
		throw new ArgumentTypeException('file', DiskFile::class);
	}

	$data = parent::get($file);
	$data['file'] = $data['object'];
	unset($data['object']);

	$downloadUri = $this->getActionUri('download', ['fileId' => $file->getId(),]);
	$showObjectInGridUri = $this->getUriToShowObjectInGrid($file);

	$data['file'] = array_merge($data['file'], [
		'extra' => [
			'downloadUri' => $downloadUri,
			'showInGridUri' => $showObjectInGridUri,
		],
	]);

	if ($file->getPreviewId())
	{
		$data['file']['extra']['previewUri'] = $this->getActionUri('showPreview', ['fileId' => $file->getId(),]);
	}

	if (TypeFile::isImage($file))
	{
		$data['file']['extra']['imagePreviewUri'] = $this->getActionUri('showImage', [
			'fileId' => $file->getId(),
			'signature' => ParameterSigner::getImageSignature($file->getId(), 400, 400),
			'width' => 400,
			'height' => 400,
		]);
	}

	return $data;
}