• Модуль: highloadblock
  • Путь к файлу: ~/bitrix/modules/highloadblock/classes/general/cusertypehlblock.php
  • Класс: CUserTypeHlblock
  • Вызов: CUserTypeHlblock::getSettingsHtml
static function getSettingsHtml($userField, ?array $additionalParameters, $varsFromForm): string
{
	$result = '';

	if (empty($userField) || !is_array($userField))
	{
		$userField = null;
	}
	if (empty($additionalParameters) || !is_array($additionalParameters))
	{
		$additionalParameters = null;
	}
	if ($additionalParameters === null)
	{
		return $result;
	}

	$name = $additionalParameters['NAME'];
	$multiple = false;
	if (isset($userField['MULTIPLE']) && $userField['MULTIPLE'] === 'Y')
	{
		$multiple = true;
	}
	$defaultSettings = self::getDefaultSettings($multiple);
	if ($varsFromForm)
	{
		$settings = self::getSettingsFromForm($userField, $additionalParameters);
	}
	else
	{
		$settings = $userField["SETTINGS"] ?? $defaultSettings;
	}
	if (empty($settings) || !is_array($settings))
	{
		$settings = $defaultSettings;
	}

	$settings = self::verifySettings($settings, $multiple);

	$moduleIncluded = Loader::includeModule('highloadblock');
	if ($moduleIncluded)
	{
		$result .= '
		
			' . Loc::getMessage('USER_TYPE_HLEL_DISPLAY') . ':
			'
			. self::getHighloadblockSelectorHtml(
				$name,
				$settings
			)
			. '
		
		';
	}
	if (
		$moduleIncluded
		&& $settings['HLBLOCK_ID'] > 0
		&& $settings['HLFIELD_ID'] > 0
	)
	{


		$result .= '
		
			'.Loc::getMessage("USER_TYPE_HLEL_DEFAULT_VALUE").':
			
				';

	}
	else
	{
		$result .= ''
			. '' . Loc::getMessage('USER_TYPE_HLEL_DEFAULT_VALUE') . ':'
			. ''
		;
		if ($multiple)
		{
			foreach ($settings['DEFAULT_VALUE'] as $value)
			{
				$result .= self::getDefaultValueRowHtml($name, (string)$value, true)
					. '
' ; } $result .= self::getDefaultValueRowHtml($name, '', true); } else { $result .= self::getDefaultValueRowHtml($name, (string)$settings['DEFAULT_VALUE'], false); } $result .= '' . '' ; } $result .= ' '.Loc::getMessage("USER_TYPE_ENUM_DISPLAY").':

'; $result .= ' '.Loc::getMessage("USER_TYPE_HLEL_LIST_HEIGHT").': '; return $result; }