• Модуль: iblock
  • Путь к файлу: ~/bitrix/modules/iblock/classes/general/prop_section_auto.php
  • Класс: CIBlockPropertySectionAutoComplete
  • Вызов: CIBlockPropertySectionAutoComplete::GetPropertyFieldHtml
static function GetPropertyFieldHtml($arProperty, $arValue, $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']) && $strHTMLControlName['MODE'] == 'iblock_element_admin')
	{
		$searchUrl = static::getSearchUrl().'?lang='.LANGUAGE_ID.
			'&IBLOCK_ID='.$arProperty['LINK_IBLOCK_ID'].
			'&n='.urlencode($strHTMLControlName["VALUE"]).
			'&hideiblock='.$arProperty['IBLOCK_ID'].
			($fixIBlock ? '&iblockfix=y' : '').
			'&tableId='.$windowTableId;
		$mxElement = static::GetPropertyValue($arProperty,$arValue);
		if (!is_array($mxElement))
		{
			$strResult = ''.
				''.
				' ';
		}
		else
		{
			$strResult = ''.
				''.
				' '.$mxElement['NAME'].'';
		}
		unset($searchUrl);
	}
	else
	{
		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" => htmlspecialcharsback(static::GetValueForAutoComplete(
					$arProperty,
					$arValue,
					$arSymbols['BAN_SYM'],
					$arSymbols['REP_SYM']
				)),
				"START_TEXT" => Loc::getMessage('BT_UT_SAUTOCOMPLETE_MESS_INVITE'),
				"MULTIPLE" => $arProperty["MULTIPLE"],
				"MAX_WIDTH" => $arSettings['MAX_WIDTH'],
				"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);"
			>