- Модуль: disk
- Путь к файлу: ~/bitrix/modules/disk/lib/integration/filediskproperty.php
- Класс: BitrixDiskIntegrationFileDiskProperty
- Вызов: FileDiskProperty::getPublicViewHTML
static function getPublicViewHTML($property, $value, $controlSettings)
{
global $APPLICATION;
$value['VALUE'] = self::prepareValue($value);
$fieldName = isset($controlSettings['VALUE']) ? $controlSettings['VALUE'] : '';
$fieldDescription = isset($controlSettings['DESCRIPTION']) ? $controlSettings['DESCRIPTION'] : '';
if(isset($controlSettings['MODE']))
{
switch($controlSettings['MODE'])
{
case 'CSV_EXPORT':
return self::convertToDB($property, $value);
case 'EXCEL_EXPORT':
$listFileName = array();
foreach($value['VALUE'] as $attachedId)
{
list($type, $realId) = FileUserType::detectType($attachedId);
if($type == FileUserType::TYPE_ALREADY_ATTACHED)
{
$attachedModel = AttachedObject::loadById($realId);
if(!$attachedModel)
{
continue;
}
$fileModel = File::loadById($attachedModel->getObjectId(), array('STORAGE'));
if(!$fileModel)
{
continue;
}
$listFileName[] = $fileModel->getName();
}
}
return implode(',', $listFileName);
}
}
$html = '';
$userField = array(
'ENTITY_ID' => 'DISK_FILE_'.$property['IBLOCK_ID'],
'FIELD_NAME' => $fieldName,
'USER_TYPE_ID' => 'disk_file',
'SORT' => 100,
'MULTIPLE' => 'Y',
'MANDATORY' => $property['IS_REQUIRED'],
'EDIT_FORM_LABEL' => $fieldDescription,
'VALUE' => $value['VALUE'],
'USER_TYPE' => $property['PROPERTY_USER_TYPE']
);
ob_start();
$APPLICATION->includeComponent(
'bitrix:disk.uf.file',
'',
array(
'PARAMS' => array(
'arUserField' => $userField,
'DISABLE_MOD_ZIP' => 'Y'
),
'EXTENDED_PREVIEW' => 'Y',
'INLINE' => 'N'
),
false,
array("HIDE_ICONS" => "Y")
);
$html .= ob_get_contents();
ob_end_clean();
return $html;
}