• Модуль: iblock
  • Путь к файлу: ~/bitrix/modules/iblock/lib/iblocktable.php
  • Класс: BitrixIblockIblockTable
  • Вызов: IblockTable::getMap
static function getMap()
{
	return array(
		'ID' => array(
			'data_type' => 'integer',
			'primary' => true,
			'autocomplete' => true,
			'title' => Loc::getMessage('IBLOCK_ENTITY_ID_FIELD'),
		),
		'TIMESTAMP_X' => array(
			'data_type' => 'datetime',
			'title' => Loc::getMessage('IBLOCK_ENTITY_TIMESTAMP_X_FIELD'),
		),
		'IBLOCK_TYPE_ID' => array(
			'data_type' => 'string',
			'required' => true,
			'title' => Loc::getMessage('IBLOCK_ENTITY_IBLOCK_TYPE_ID_FIELD'),
			'validation' => array(__CLASS__, 'validateIblockTypeId'),
		),
		'LID' => array(
			'data_type' => 'string',
			'validation' => array(__CLASS__, 'validateLid'),
		),
		'CODE' => array(
			'data_type' => 'string',
			'title' => Loc::getMessage('IBLOCK_ENTITY_CODE_FIELD'),
			'validation' => array(__CLASS__, 'validateCode'),
		),
		(new StringField('API_CODE'))
			->configureSize(50),
		(new BooleanField('REST_ON'))
			->configureValues('N', 'Y')
			->configureDefaultValue('N'),
		'NAME' => array(
			'data_type' => 'string',
			'required' => true,
			'title' => Loc::getMessage('IBLOCK_ENTITY_NAME_FIELD'),
			'validation' => array(__CLASS__, 'validateName'),
		),
		'ACTIVE' => array(
			'data_type' => 'boolean',
			'values' => array('N','Y'),
			'title' => Loc::getMessage('IBLOCK_ENTITY_ACTIVE_FIELD'),
		),
		'SORT' => array(
			'data_type' => 'integer',
			'title' => Loc::getMessage('IBLOCK_ENTITY_SORT_FIELD'),
		),
		'LIST_PAGE_URL' => array(
			'data_type' => 'string',
			'title' => Loc::getMessage('IBLOCK_ENTITY_LIST_PAGE_URL_FIELD'),
			'validation' => array(__CLASS__, 'validateListPageUrl'),
		),
		'DETAIL_PAGE_URL' => array(
			'data_type' => 'string',
			'title' => Loc::getMessage('IBLOCK_ENTITY_DETAIL_PAGE_URL_FIELD'),
			'validation' => array(__CLASS__, 'validateDetailPageUrl'),
		),
		'SECTION_PAGE_URL' => array(
			'data_type' => 'string',
			'title' => Loc::getMessage('IBLOCK_ENTITY_SECTION_PAGE_URL_FIELD'),
			'validation' => array(__CLASS__, 'validateSectionPageUrl'),
		),
		'CANONICAL_PAGE_URL' => array(
			'data_type' => 'string',
			'title' => Loc::getMessage('IBLOCK_ENTITY_CANONICAL_PAGE_URL_FIELD'),
			'validation' => array(__CLASS__, 'validateCanonicalPageUrl'),
		),
		'PICTURE' => array(
			'data_type' => 'integer',
			'title' => Loc::getMessage('IBLOCK_ENTITY_PICTURE_FIELD'),
		),
		'DESCRIPTION' => array(
			'data_type' => 'string',
			'title' => Loc::getMessage('IBLOCK_ENTITY_DESCRIPTION_FIELD'),
		),
		'DESCRIPTION_TYPE' => array(
			'data_type' => 'enum',
			'values' => array('text', 'html'),
			'title' => Loc::getMessage('IBLOCK_ENTITY_DESCRIPTION_TYPE_FIELD'),
		),
		'XML_ID' => array(
			'data_type' => 'string',
			'title' => Loc::getMessage('IBLOCK_ENTITY_XML_ID_FIELD'),
			'validation' => array(__CLASS__, 'validateXmlId'),
		),
		'TMP_ID' => array(
			'data_type' => 'string',
			'title' => Loc::getMessage('IBLOCK_ENTITY_TMP_ID_FIELD'),
			'validation' => array(__CLASS__, 'validateTmpId'),
		),
		'INDEX_ELEMENT' => array(
			'data_type' => 'boolean',
			'values' => array('N','Y'),
			'title' => Loc::getMessage('IBLOCK_ENTITY_INDEX_ELEMENT_FIELD'),
		),
		'INDEX_SECTION' => array(
			'data_type' => 'boolean',
			'values' => array('N','Y'),
			'title' => Loc::getMessage('IBLOCK_ENTITY_INDEX_SECTION_FIELD'),
		),
		'WORKFLOW' => array(
			'data_type' => 'boolean',
			'values' => array('N','Y'),
			'title' => Loc::getMessage('IBLOCK_ENTITY_WORKFLOW_FIELD'),
		),
		'BIZPROC' => array(
			'data_type' => 'boolean',
			'values' => array('N','Y'),
			'title' => Loc::getMessage('IBLOCK_ENTITY_BIZPROC_FIELD'),
		),
		'SECTION_CHOOSER' => array(
			'data_type' => 'enum',
			'values' => array(
				self::SECTION_CHOOSER_SELECT,
				self::SECTION_CHOOSER_DROPDOWNS,
				self::SECTION_CHOOSER_PATH
			),
			'default_value' => self::SECTION_CHOOSER_SELECT,
			'title' => Loc::getMessage('IBLOCK_ENTITY_SECTION_CHOOSER_FIELD'),
		),
		'LIST_MODE' => array(
			'data_type' => 'enum',
			'values' => array(self::LIST_MODE_COMBINED, self::LIST_MODE_SEPARATE),
			'default_value' => self::LIST_MODE_COMBINED,
			'title' => Loc::getMessage('IBLOCK_ENTITY_LIST_MODE_FIELD'),
		),
		'RIGHTS_MODE' => array(
			'data_type' => 'enum',
			'values' => array(self::RIGHTS_SIMPLE, self::RIGHTS_EXTENDED),
			'default_value' => self::RIGHTS_SIMPLE,
			'title' => Loc::getMessage('IBLOCK_ENTITY_RIGHTS_MODE_FIELD'),
		),
		'SECTION_PROPERTY' => array(
			'data_type' => 'boolean',
			'values' => array('N','Y'),
			'title' => Loc::getMessage('IBLOCK_ENTITY_SECTION_PROPERTY_FIELD'),
		),
		'PROPERTY_INDEX' => array(
			'data_type' => 'enum',
			'values' => array(self::PROPERTY_INDEX_DISABLE, self::PROPERTY_INDEX_ENABLE, self::PROPERTY_INDEX_INVALID),
			'default' => self::PROPERTY_INDEX_DISABLE,
			'title' => Loc::getMessage('IBLOCK_ENTITY_PROPERTY_INDEX_FIELD'),
		),
		'VERSION' => array(
			'data_type' => 'enum',
			'values' => array(self::PROPERTY_STORAGE_COMMON, self::PROPERTY_STORAGE_SEPARATE),
			'default_value' => self::PROPERTY_STORAGE_COMMON,
			'title' => Loc::getMessage('IBLOCK_ENTITY_VERSION_FIELD'),
		),
		'LAST_CONV_ELEMENT' => array(
			'data_type' => 'integer',
			'title' => Loc::getMessage('IBLOCK_ENTITY_LAST_CONV_ELEMENT_FIELD'),
		),
		'SOCNET_GROUP_ID' => array(
			'data_type' => 'integer',
			'title' => Loc::getMessage('IBLOCK_ENTITY_SOCNET_GROUP_ID_FIELD'),
		),
		'EDIT_FILE_BEFORE' => array(
			'data_type' => 'string',
			'title' => Loc::getMessage('IBLOCK_ENTITY_EDIT_FILE_BEFORE_FIELD'),
			'validation' => array(__CLASS__, 'validateEditFileBefore'),
		),
		'EDIT_FILE_AFTER' => array(
			'data_type' => 'string',
			'title' => Loc::getMessage('IBLOCK_ENTITY_EDIT_FILE_AFTER_FIELD'),
			'validation' => array(__CLASS__, 'validateEditFileAfter'),
		),
		'TYPE' => array(
			'data_type' => 'BitrixIblockType',
			'reference' => array('=this.IBLOCK_TYPE_ID' => 'ref.ID'),
		),

		new OneToMany('PROPERTIES', PropertyTable::class, 'IBLOCK')
	);
}