• Модуль: iblock
  • Путь к файлу: ~/bitrix/modules/iblock/classes/general/prop_section_auto.php
  • Класс: CIBlockPropertySectionAutoComplete
  • Вызов: CIBlockPropertySectionAutoComplete::GetPropertyFieldHtmlMulty
static function GetPropertyFieldHtmlMulty($arProperty, $arValues, $strHTMLControlName)
{
	global $APPLICATION;

	$arSettings = static::PrepareSettings($arProperty);
	$arSymbols = static::GetSymbols($arSettings);

	$arProperty['LINK_IBLOCK_ID'] = (int)$arProperty['LINK_IBLOCK_ID'];
	$fixIBlock = $arProperty["LINK_IBLOCK_ID"] > 0;
	$windowTableId = 'iblockprop-'.IblockPropertyTable::TYPE_SECTION.'-'.$arProperty['ID'].'-'.$arProperty['LINK_IBLOCK_ID'];

	if (isset($strHTMLControlName['MODE']) && ('iblock_element_admin' == $strHTMLControlName['MODE']))
	{
		$arResult = [];
		foreach ($arValues as $intPropertyValueID => $arOneValue)
		{
			$mxElement = static::GetPropertyValue($arProperty,$arOneValue);
			if (is_array($mxElement))
			{
				$searchUrl = static::getSearchUrl().'?lang='.LANGUAGE_ID.
					'&IBLOCK_ID='.$arProperty["LINK_IBLOCK_ID"].
					'&n='.urlencode($strHTMLControlName["VALUE"].'['.$intPropertyValueID.']').
					'&hideiblock='.$arProperty['IBLOCK_ID'].
					($fixIBlock ? '&iblockfix=y' : '').
					'&tableId='.$windowTableId;
				$arResult[] = ''.
				''.
				' '.$mxElement['NAME'].'';
				unset($searchUrl);
			}
		}

		if (0 < intval($arProperty['MULTIPLE_CNT']))
		{
			for ($i = 0; $i < $arProperty['MULTIPLE_CNT']; $i++)
			{
				$searchUrl = static::getSearchUrl().'?lang='.LANGUAGE_ID.
					'&IBLOCK_ID='.$arProperty["LINK_IBLOCK_ID"].
					'&n='.urlencode($strHTMLControlName["VALUE"].'[n'.$i.']').
					'&hideiblock='.$arProperty['IBLOCK_ID'].
					($fixIBlock ? '&iblockfix=y' : '').
					'&tableId='.$windowTableId;
				$arResult[] = ''.
				''.
				' ';
			}
			unset($searchUrl);
		}

		$strResult = implode('
',$arResult); } else { $mxResultValue = static::GetValueForAutoCompleteMulti($arProperty,$arValues,$arSymbols['BAN_SYM'],$arSymbols['REP_SYM']); $strResultValue = (is_array($mxResultValue) ? htmlspecialcharsback(implode("n",$mxResultValue)) : ''); ob_start(); ?>IncludeComponent( "bitrix:main.lookup.input", "iblockedit", array( "CONTROL_ID" => preg_replace( "/[^a-zA-Z0-9_]/i", "x", $strHTMLControlName["VALUE"].'_'.mt_rand(0, 10000) ), "INPUT_NAME" => $strHTMLControlName['VALUE'].'[]', "INPUT_NAME_STRING" => "inp_".$strHTMLControlName['VALUE'], "INPUT_VALUE_STRING" => $strResultValue, "START_TEXT" => Loc::getMessage('BT_UT_SAUTOCOMPLETE_MESS_INVITE'), "MULTIPLE" => $arProperty["MULTIPLE"], "MAX_WIDTH" => $arSettings['MAX_WIDTH'], "MIN_HEIGHT" => $arSettings['MIN_HEIGHT'], "MAX_HEIGHT" => $arSettings['MAX_HEIGHT'], "IBLOCK_ID" => $arProperty["LINK_IBLOCK_ID"], 'WITHOUT_IBLOCK' => (!$fixIBlock ? 'Y' : 'N'), 'BAN_SYM' => $arSymbols['BAN_SYM_STRING'], 'REP_SYM' => $arSymbols['REP_SYM_STRING'], 'FILTER' => 'Y', 'TYPE' => 'SECTION' ), null, array("HIDE_ICONS" => "Y") ); ?> null, 'IBLOCK_SECTION_ID' => -1, 'find_section_section' => -1, 'lookup' => 'jsMLI_'.$control_id, 'tableId' => $windowTableId ), ($fixIBlock ? '&iblockfix=y' : '') ); ?>', 900, 700);" >