• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/lib/userconsent/agreement.php
  • Класс: BitrixMainUserConsentAgreement
  • Вызов: Agreement::getReplaceFieldValues
protected function getReplaceFieldValues()
{
	$result = $this->getFieldValues();
	$fields = $this->intl->getFields();

	// set default values to result
	foreach ($fields as $field)
	{
		if (!isset($field['DEFAULT_VALUE']) || !$field['DEFAULT_VALUE'])
		{
			continue;
		}

		if (isset($result[$field['CODE']]) && $result[$field['CODE']])
		{
			continue;
		}

		$result[$field['CODE']] = $field['DEFAULT_VALUE'];
	}

	// set values to result
	foreach ($fields as $field)
	{
		if ($field['TYPE'] != 'enum' || empty($field['TEXT']))
		{
			continue;
		}

		$fieldCode = $field['CODE'];

		$valueAsText = null;
		foreach ($field['ITEMS'] as $item)
		{
			// detect text item
			if (isset($item['IS_TEXT']) && $item['IS_TEXT'])
			{
				continue;
			}

			if ($result[$fieldCode] == $item['CODE'])
			{
				$valueAsText = $item['NAME'];
			}
		}

		if (!$valueAsText)
		{
			continue;
		}

		$result[$field['TEXT']] = Text::formatArrayToText(array($valueAsText));
	}

	return $result;
}