121 'ID' => (
new ORM\Fields\IntegerField(
'ID'))
122 ->configurePrimary(
true)
123 ->configureAutocomplete(
true)
126 'TIMESTAMP_X' => (
new ORM\Fields\
DatetimeField(
'TIMESTAMP_X'))
127 ->configureTitle(
Loc::getMessage(
'IBLOCK_PROPERTY_ENTITY_TIMESTAMP_X_FIELD'))
129 'IBLOCK_ID' => (
new ORM\Fields\
IntegerField(
'IBLOCK_ID'))
130 ->configureRequired(
true)
131 ->configureTitle(
Loc::getMessage(
'IBLOCK_PROPERTY_ENTITY_IBLOCK_ID_FIELD'))
134 ->configureRequired(
true)
136 ->addValidator(
new ORM\Fields\Validators\LengthValidator(
null, 255))
140 ->configureValues(
'N',
'Y')
141 ->configureDefaultValue(
'Y')
142 ->configureTitle(
Loc::getMessage(
'IBLOCK_PROPERTY_ENTITY_ACTIVE_FIELD'))
145 ->configureDefaultValue(100)
149 ->configureNullable(
true)
151 ->addValidator(
new ORM\Fields\Validators\LengthValidator(
null, 50))
154 'DEFAULT_VALUE' => (
new ORM\Fields\
TextField(
'DEFAULT_VALUE'))
155 ->configureNullable(
true)
156 ->configureTitle(
Loc::getMessage(
'IBLOCK_PROPERTY_ENTITY_DEFAULT_VALUE_FIELD'))
158 'PROPERTY_TYPE' => (
new ORM\Fields\
EnumField(
'PROPERTY_TYPE'))
159 ->configureRequired(
true)
168 ->configureDefaultValue(self::TYPE_STRING)
169 ->configureTitle(
Loc::getMessage(
'IBLOCK_PROPERTY_ENTITY_PROPERTY_TYPE_FIELD'))
171 'ROW_COUNT' => (
new ORM\Fields\
IntegerField(
'ROW_COUNT'))
172 ->configureDefaultValue(1)
173 ->configureTitle(
Loc::getMessage(
'IBLOCK_PROPERTY_ENTITY_ROW_COUNT_FIELD'))
175 'COL_COUNT' => (
new ORM\Fields\
IntegerField(
'COL_COUNT'))
176 ->configureDefaultValue(30)
177 ->configureTitle(
Loc::getMessage(
'IBLOCK_PROPERTY_ENTITY_COL_COUNT_FIELD'))
179 'LIST_TYPE' => (
new ORM\Fields\
EnumField(
'LIST_TYPE'))
184 ->configureDefaultValue(self::LISTBOX)
185 ->configureTitle(
Loc::getMessage(
'IBLOCK_PROPERTY_ENTITY_LIST_TYPE_FIELD'))
188 ->configureValues(
'N',
'Y')
189 ->configureDefaultValue(
'N')
190 ->configureTitle(
Loc::getMessage(
'IBLOCK_PROPERTY_ENTITY_MULTIPLE_FIELD'))
193 ->configureNullable(
true)
195 ->addValidator(
new ORM\Fields\Validators\LengthValidator(
null, 100))
196 ->configureTitle(
Loc::getMessage(
'IBLOCK_PROPERTY_ENTITY_XML_ID_FIELD'))
198 'FILE_TYPE' => (
new ORM\Fields\
StringField(
'FILE_TYPE'))
199 ->configureNullable(
true)
201 ->addValidator(
new ORM\Fields\Validators\LengthValidator(
null, 200))
202 ->configureTitle(
Loc::getMessage(
'IBLOCK_PROPERTY_ENTITY_FILE_TYPE_FIELD'))
204 'MULTIPLE_CNT' => (
new ORM\Fields\
IntegerField(
'MULTIPLE_CNT'))
205 ->configureNullable(
true)
206 ->configureDefaultValue(self::DEFAULT_MULTIPLE_CNT)
207 ->configureTitle(
Loc::getMessage(
'IBLOCK_PROPERTY_ENTITY_MULTIPLE_CNT_FIELD'))
210 ->configureNullable(
true)
212 ->addValidator(
new ORM\Fields\Validators\LengthValidator(
null, 40))
213 ->configureTitle(
Loc::getMessage(
'IBLOCK_PROPERTY_ENTITY_TMP_ID_FIELD'))
215 'LINK_IBLOCK_ID' => (
new ORM\Fields\
IntegerField(
'LINK_IBLOCK_ID'))
216 ->configureNullable(
true)
217 ->configureDefaultValue(0)
218 ->configureTitle(
Loc::getMessage(
'IBLOCK_PROPERTY_ENTITY_LINK_IBLOCK_ID_FIELD'))
220 'WITH_DESCRIPTION' => (
new ORM\Fields\
BooleanField(
'WITH_DESCRIPTION'))
221 ->configureValues(
'N',
'Y')
222 ->configureDefaultValue(
'N')
223 ->configureTitle(
Loc::getMessage(
'IBLOCK_PROPERTY_ENTITY_WITH_DESCRIPTION_FIELD'))
225 'SEARCHABLE' => (
new ORM\Fields\
BooleanField(
'SEARCHABLE'))
226 ->configureValues(
'N',
'Y')
227 ->configureDefaultValue(
'N')
228 ->configureTitle(
Loc::getMessage(
'IBLOCK_PROPERTY_ENTITY_SEARCHABLE_FIELD'))
230 'FILTRABLE' => (
new ORM\Fields\
BooleanField(
'FILTRABLE'))
231 ->configureValues(
'N',
'Y')
232 ->configureDefaultValue(
'N')
233 ->configureTitle(
Loc::getMessage(
'IBLOCK_PROPERTY_ENTITY_FILTRABLE_FIELD'))
235 'IS_REQUIRED' => (
new ORM\Fields\
BooleanField(
'IS_REQUIRED'))
236 ->configureValues(
'N',
'Y')
237 ->configureDefaultValue(
'N')
238 ->configureTitle(
Loc::getMessage(
'IBLOCK_PROPERTY_ENTITY_IS_REQUIRED_FIELD'))
240 'VERSION' => (
new ORM\Fields\
EnumField(
'VERSION'))
241 ->configureValues([1, 2])
242 ->configureDefaultValue(1)
243 ->configureTitle(
Loc::getMessage(
'IBLOCK_PROPERTY_ENTITY_VERSION_FIELD'))
245 'USER_TYPE' => (
new ORM\Fields\
StringField(
'USER_TYPE'))
246 ->configureNullable(
true)
248 ->addValidator(
new ORM\Fields\Validators\LengthValidator(
null, 255))
249 ->configureTitle(
Loc::getMessage(
'IBLOCK_PROPERTY_ENTITY_USER_TYPE_FIELD'))
251 'USER_TYPE_SETTINGS_LIST' => (
new ORM\Fields\
ArrayField(
'USER_TYPE_SETTINGS_LIST'))
252 ->configureNullable(
true)
253 ->configureSerializationPhp()
254 ->configureColumnName(
'USER_TYPE_SETTINGS')
255 ->configureTitle(
Loc::getMessage(
'IBLOCK_PROPERTY_ENTITY_USER_TYPE_SETTINGS_FIELD'))
257 'USER_TYPE_SETTINGS' => (
new ORM\Fields\
TextField(
'USER_TYPE_SETTINGS'))
258 ->configureNullable(
true)
260 'HINT' => (
new ORM\Fields\StringField(
'HINT'))
261 ->configureNullable(
true)
263 ->addValidator(
new ORM\Fields\Validators\LengthValidator(
null, 255))
266 'LINK_IBLOCK' =>
new ORM\Fields\Relations\
Reference(
269 ORM\
Query\Join::on(
'this.LINK_IBLOCK_ID',
'ref.ID')
271 'IBLOCK' =>
new ORM\Fields\Relations\
Reference(
274 ORM\
Query\Join::on(
'this.IBLOCK_ID',
'ref.ID')