<?php use Bex\Bbc\Helpers\ComponentParameters; use Bitrix\Iblock; use Bitrix\Main\Localization\Loc; if (!defined('B_PROLOG_INCLUDED') || B_PROLOG_INCLUDED !== true) { die; } if (!\Bitrix\Main\Loader::includeModule('bex.bbc')) { return false; } Loc::loadMessages(__FILE__); try { ComponentParameters::includeModules(['iblock']); $iblockTypes = CIBlockParameters::GetIBlockTypes([0 => '']); $iblocks = [0 => '']; $sections = [0 => '']; $elementProperties = []; if (isset($arCurrentValues['IBLOCK_TYPE']) && strlen($arCurrentValues['IBLOCK_TYPE'])) { $rsIblocks = Iblock\IblockTable::getList(['order' => ['SORT' => 'ASC', 'NAME' => 'ASC'], 'filter' => ['IBLOCK_TYPE_ID' => $arCurrentValues['IBLOCK_TYPE'], 'ACTIVE' => 'Y'], 'select' => ['ID', 'NAME']]); while ($iblock = $rsIblocks->fetch()) { $iblocks[$iblock['ID']] = $iblock['NAME']; } } if (isset($arCurrentValues['IBLOCK_ID']) && strlen($arCurrentValues['IBLOCK_ID'])) { $rsSections = Iblock\SectionTable::getList(['order' => ['SORT' => 'ASC', 'NAME' => 'ASC'], 'filter' => ['IBLOCK_ID' => $arCurrentValues['IBLOCK_ID'], 'ACTIVE' => 'Y'], 'select' => ['ID', 'NAME']]); while ($arSection = $rsSections->fetch()) { $sections[$arSection['ID']] = $arSection['NAME']; } $rsProperties = CIBlockProperty::GetList(['sort' => 'asc', 'name' => 'asc'], ['ACTIVE' => 'Y', 'IBLOCK_ID' => $arCurrentValues['IBLOCK_ID']]); while ($property = $rsProperties->Fetch()) {