- Модуль: catalog
- Путь к файлу: ~/bitrix/modules/catalog/lib/component/baseform.php
- Класс: BitrixCatalogComponentBaseForm
- Вызов: BaseForm::getUserFieldHighloadblockItems
private function getUserFieldHighloadblockItems(array $userField): array
{
$list = [];
if (
$userField['MANDATORY'] === 'N'
&& $userField['MULTIPLE'] === 'N'
)
{
$list[] = [
'ID' => '0',
'VALUE' => '0',
'NAME' => Loc::getMessage('CATALOG_PRODUCT_CARD_USERFIELD_MESS_EMPTY_VALUE')
];
}
$entity = HighloadHighloadBlockTable::compileEntity($userField['SETTINGS']['HLBLOCK_ID']);
$fieldsList = $entity->getFields();
if (isset($fieldsList['ID']) && isset($fieldsList['UF_NAME']))
{
$entityDataClass = $entity->getDataClass();
$iterator = $entityDataClass::getList([
'select' => [
'ID',
'UF_NAME',
],
'order' => [
'UF_NAME' => 'ASC',
],
]);
while ($value = $iterator->fetch())
{
$list[] = [
'ID' => $value['ID'],
'VALUE' => $value['ID'],
'NAME' => $value['UF_NAME'],
];
}
unset($value, $iterator);
unset($entityDataClass, $entity);
}
return (!empty($list) ? ['items' => $list] : []);
}