• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/entity/entityeditor.php
  • Класс: Bitrix\Crm\Entity\EntityEditor
  • Вызов: EntityEditor::mapRequestData
static function mapRequestData(array $fieldInfos, array &$entityData,  array &$userFields)
{
	$results = array();
	/** @var \CCrmPerms $userPermissions */
	$userPermissions = \CCrmPerms::GetCurrentUserPermissions();
	/** @var Main\HttpRequest $request */
	$request = Main\Application::getInstance()->getContext()->getRequest();
	$queryParams = $request->getQueryList()->toArray();
	foreach($queryParams as $k => $v)
	{
		$k = mb_strtoupper($k);
		if(!isset($fieldInfos[$k]))
		{
			continue;
		}

		$info = $fieldInfos[$k];
		$attributes = isset($info['ATTRIBUTES']) ? $info['ATTRIBUTES']: array();
		if(!empty($attributes) && in_array(\CCrmFieldInfoAttr::ReadOnly, $attributes, true))
		{
			continue;
		}

		//Strip all tags for security reasons
		if(is_array($v))
		{
			$v = array_map('strip_tags', $v);
		}
		else
		{
			$v = strip_tags($v);
		}

		$typeName = isset($info['TYPE']) ? $info['TYPE']: 'string';
		if(self::setDataField($typeName, $k, $v, $entityData, $userFields))
		{
			$results[$k] = $v;
		}
	}

	return $results;
}