все просто. получаем элементы связанного инфоблока (в моем примере эти элементы связаны с юзером)
//вывод тс
Код |
---|
$arFilter = array("IBLOCK_ID"=>17,"ACTIVE"=>"Y","PROPERTY_TRANSPORT_USER_ID"=>$USER->GetId(),);
$arSelect=array("IBLOCK_ID","ID","NAME");
$BDRes = CIBlockElement::GetList(false,$arFilter,false,false,$arSelect);
$arResult["PROPERTY_LIST_FULL"][256]["VALUE"]=array();
if(!empty($BDRes))
while($arRes = $BDRes->GetNext())
{
$arResult["PROPERTY_LIST_FULL"][256]["VALUE"][$arRes["ID"]]=$arRes;
} |
а потом в Switch добавляем вывод по типу E
Код |
---|
case "E":
{?>
<select name="PROPERTY[<?=$propertyID?>]">
<option value=""><?echo GetMessage("CT_BIEAF_PROPERTY_VALUE_NA")?></option>
<?
foreach ($arResult["PROPERTY_LIST_FULL"][$propertyID]["VALUE"] as $key => $arEl)
{
?>
<option value="<?=$key?>"><?=$arEl["NAME"]?></option>
<?
}
?>
</select>
<?break;
}
|
потом в самом компоненте надо сделать сохранение пришедшего варианта, предварительно скопировав компонент в свое пространство имен и указав название пространства имен в вызове компонента