• Модуль: catalog
  • Путь к файлу: ~/bitrix/modules/catalog/lib/component/baseform.php
  • Класс: BitrixCatalogComponentBaseForm
  • Вызов: BaseForm::getFilePropertyViewHtml
protected function getFilePropertyViewHtml($description, $value, $controlId, bool $multipleForList = null)
{
	$cid = FileInputUtility::instance()->registerControl('', $controlId);
	$signer = new BitrixMainSecuritySignSigner();
	$signature = $signer->getSignature($cid, 'main.file.input');
	if (is_array($value))
	{
		foreach ($value as $elementOfValue)
		{
			FileInputUtility::instance()->registerFile($cid, $elementOfValue);
		}
	}
	else
	{
		FileInputUtility::instance()->registerFile($cid, $value);
	}

	if ($multipleForList === null)
	{
		$multiple = $description['settings']['MULTIPLE'];
	}
	else
	{
		$multiple = $multipleForList ? 'Y' : 'N';
	}

	ob_start();

	$this->getApplication()->IncludeComponent(
		'bitrix:main.field.file',
		'',
		[
			'userField' => [
				'ID' => $description['settings']['ID'],
				'VALUE' => $value,
				'USER_TYPE_ID' => 'file',
				'MULTIPLE' => $multiple,
			],
			'additionalParameters' => [
				'mode' => 'main.view',
				'CONTEXT' => 'UI_EDITOR',
				'URL_TEMPLATE' => '/bitrix/components/bitrix/main.file.input/ajax.php?'
					. 'mfi_mode=down'
					. '&fileID=#file_id#'
					. '&cid=' . $cid
					. '&sessid=' . bitrix_sessid()
					. '&s=' . $signature,
			],
		]
	);

	return ob_get_clean();
}