public function getAdditionalFields(): array
{
$fields = [
[
'name' => 'FILTRABLE',
'title' => Loc::getMessage('IBLOCK_ENTITY_EDITOR_PROPERTY_FILTERABLE_MSGVER_1'),
'type' => 'boolean',
],
[
'name' => 'WITH_DESCRIPTION',
'title' => Loc::getMessage('IBLOCK_ENTITY_EDITOR_PROPERTY_WITH_DESCRIPTION'),
'type' => 'boolean',
],
[
'name' => 'MULTIPLE_CNT',
'title' => Loc::getMessage('IBLOCK_ENTITY_EDITOR_PROPERTY_MULTIPLE_CNT'),
'type' => 'number',
],
[
'name' => 'HINT',
'title' => Loc::getMessage('IBLOCK_ENTITY_EDITOR_PROPERTY_HINT'),
'type' => 'text',
],
[
'name' => 'SECTION_PROPERTY',
'title' => Loc::getMessage('IBLOCK_ENTITY_EDITOR_PROPERTY_SECTION_PROPERTY'),
'type' => 'boolean',
],
[
'name' => 'SMART_FILTER',
'title' => Loc::getMessage('IBLOCK_ENTITY_EDITOR_PROPERTY_SMART_FILTER'),
'type' => 'boolean',
],
[
'name' => 'DISPLAY_TYPE',
'title' => Loc::getMessage('IBLOCK_ENTITY_EDITOR_PROPERTY_DISPLAY_TYPE'),
'type' => 'list',
'data' => [
'items' => $this->getDisplayTypeItems(),
],
],
[
'name' => 'DISPLAY_EXPANDED',
'title' => Loc::getMessage('IBLOCK_ENTITY_EDITOR_PROPERTY_DISPLAY_EXPANDED'),
'type' => 'boolean',
],
[
'name' => 'FILTER_HINT',
'title' => Loc::getMessage('IBLOCK_ENTITY_EDITOR_PROPERTY_FILTER_HINT'),
'type' => 'textarea',
],
[
'name' => 'ROW_COUNT',
'title' => Loc::getMessage('IBLOCK_ENTITY_EDITOR_PROPERTY_ROW_COUNT'),
'type' => 'number',
],
[
'name' => 'COL_COUNT',
'title' => Loc::getMessage('IBLOCK_ENTITY_EDITOR_PROPERTY_COL_COUNT'),
'type' => 'number',
],
[
'name' => 'FILE_TYPE',
'title' => Loc::getMessage('IBLOCK_ENTITY_EDITOR_PROPERTY_FILE_TYPE'),
'type' => 'text',
],
[
'name' => 'LINK_IBLOCK_ID',
'title' => Loc::getMessage('IBLOCK_ENTITY_EDITOR_PROPERTY_LINK_IBLOCK_ID'),
'type' => 'list',
'data' => [
'items' => $this->getLinkIblockIdItems(),
],
],
[
'name' => 'LIST_TYPE',
'title' => Loc::getMessage('IBLOCK_ENTITY_EDITOR_PROPERTY_LIST_TYPE'),
'type' => 'list',
'data' => [
'items' => $this->getListTypeItems(),
],
],
];
if (Option::get('iblock', 'show_xml_id') === 'Y')
{
$fields[] = [
'name' => 'XML_ID',
'title' => Loc::getMessage('IBLOCK_ENTITY_EDITOR_PROPERTY_XML_ID'),
'type' => 'text',
];
}
// add default value
$html = $this->getPropertyTypeSettings()->getDefaultValueHtml();
if (isset($html))
{
$fields[] = [
'name' => 'DEFAULT_VALUE',
'title' => Loc::getMessage('IBLOCK_ENTITY_EDITOR_PROPERTY_DEFAULT_VALUE'),
'type' => 'custom',
'data' => [
'html' => $html,
],
];
}
else
{
$fields[] = [
'name' => 'DEFAULT_VALUE',
'title' => Loc::getMessage('IBLOCK_ENTITY_EDITOR_PROPERTY_DEFAULT_VALUE'),
'type' => 'text',
];
}
// add feature fields
$futureFields = $this->getPropertyFeatureEditorFields();
if ($futureFields->isHasFields())
{
array_push($fields, ... $futureFields->getEntityFields());
}
return $this->clearHiddenFields($fields);
}