private function getFieldsIBlockElement(): array
{
$fieldList = [
'ID' => [
'TYPE' => DataType::TYPE_INT,
'ATTRIBUTES' => [
Attributes::READONLY,
],
],
'CREATED_BY' => [
'TYPE' => DataType::TYPE_INT,
],
'DATE_CREATE' => [
'TYPE' => DataType::TYPE_DATETIME,
],
'MODIFIED_BY' => [
'TYPE' => DataType::TYPE_INT,
],
'TIMESTAMP_X' => [
'TYPE' => DataType::TYPE_DATETIME,
'ATTRIBUTES' => [
Attributes::READONLY,
],
],
'ACTIVE' => [
'TYPE' => DataType::TYPE_CHAR,
],
'DATE_ACTIVE_FROM' => [
'TYPE' => DataType::TYPE_DATETIME,
],
'DATE_ACTIVE_TO' => [
'TYPE' => DataType::TYPE_DATETIME,
],
'NAME' => [
'TYPE' => DataType::TYPE_STRING,
'ATTRIBUTES' => [
Attributes::REQUIRED_ADD,
],
],
'CODE' => [
'TYPE' => DataType::TYPE_STRING,
],
'SORT' => [
'TYPE' => DataType::TYPE_INT,
],
'PREVIEW_TEXT' => [
'TYPE' => DataType::TYPE_STRING,
],
'PREVIEW_TEXT_TYPE' => [
'TYPE' => DataType::TYPE_STRING,
],
'PREVIEW_PICTURE' => [
'TYPE' => DataType::TYPE_FILE,
],
'DETAIL_TEXT' => [
'TYPE' => DataType::TYPE_STRING,
],
'DETAIL_TEXT_TYPE' => [
'TYPE' => DataType::TYPE_STRING,
],
'DETAIL_PICTURE' => [
'TYPE' => DataType::TYPE_FILE,
],
'IBLOCK_ID' => [
'TYPE' => DataType::TYPE_INT,
'ATTRIBUTES' => [
Attributes::REQUIRED,
Attributes::IMMUTABLE,
],
],
'IBLOCK_SECTION_ID' => [
'TYPE' => DataType::TYPE_INT,
],
'XML_ID' => [
'TYPE' => DataType::TYPE_STRING,
],
];
return $this->fillFieldNames($fieldList);
}