• Модуль: iblock
  • Путь к файлу: ~/bitrix/modules/iblock/lib/component/selector/entity.php
  • Класс: BitrixIblockComponentSelectorEntity
  • Вызов: Entity::onPrepareComponentParams
public function onPrepareComponentParams($params)
{
	if (!is_array($params))
	{
		$params = [];
	}

	$this->prepareNodeIds($params);

	$params['MULTIPLE_SELECT'] = (isset($params['MULTIPLE_SELECT']) && $params['MULTIPLE_SELECT'] === 'Y');

	$params['BASE_LINK'] = (isset($params['BASE_LINK']) ? $params['BASE_LINK'] : '');

	$params['IBLOCK_ID'] = (isset($params['IBLOCK_ID']) ? (int)$params['IBLOCK_ID'] : 0);
	if ($params['IBLOCK_ID'] < 0)
		$params['IBLOCK_ID'] = 0;

	$params['USE_MODE'] = (isset($params['USE_MODE']) && is_string($params['USE_MODE'])
		? trim($params['USE_MODE'])
		: self::MODE_PAGE
	);

	$params['RESULT_ACTION_TYPE'] = (isset($params['RESULT_ACTION_TYPE']) && is_string($params['RESULT_ACTION_TYPE'])
		? trim($params['RESULT_ACTION_TYPE'])
		: self::RESULT_ACTION_TYPE_NONE
	);

	if (!isset($params['RESULT_ACTION_NAME']))
		$params['RESULT_ACTION_NAME'] = '';
	if (!is_string($params['RESULT_ACTION_NAME']) && !is_array($params['RESULT_ACTION_NAME']))
		$params['RESULT_ACTION_NAME'] = '';
	$params['RESULT_ACTION_NAME'] = preg_replace('/[^a-zA-Z0-9]/', '', $params['RESULT_ACTION_NAME']);
	if (empty($params['RESULT_ACTION_NAME']))
		$params['RESULT_ACTION_TYPE'] = self::RESULT_ACTION_TYPE_NONE;

	$params['RESULT_DATA_TYPE'] = (isset($params['RESULT_DATA_TYPE']) && is_string($params['RESULT_DATA_TYPE'])
		? $params['RESULT_DATA_TYPE']
		: self::RESULT_DATA_TYPE_NONE
	);
	if ($params['RESULT_DATA_TYPE'] == self::RESULT_DATA_TYPE_SET)
		$params['MULTIPLE_SELECT'] = false;

	$params['RESULT_DATA_SET_LIST'] = (isset($params['RESULT_DATA_SET_LIST']) && is_array($params['RESULT_DATA_SET_LIST'])
		? $params['RESULT_DATA_SET_LIST']
		: []
	);

	$params['PAGETITLE_FILTER'] = (isset($params['PAGETITLE_FILTER']) && $params['PAGETITLE_FILTER'] === 'Y' ? 'Y' : 'N');

	return $params;
}