• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/location/admin/namehelper.php
  • Класс: BitrixSaleLocationAdminNameHelper
  • Вызов: NameHelper::proxyListRequest
static function proxyListRequest($page)
{
	$parameters = parent::proxyListRequest($page);

	$fldSubMap = static::readMap(self::getEntityRoadCode(), 'list');
	$roadMap = static::getEntityRoadMap();
	$road = $roadMap[self::getEntityRoadCode()]['name'];
	$class = $road.'Table';
	$languages = self::getLanguageList();

	// select

	foreach($languages as $lang)
	{
		$lang = ToUpper($lang);

		$parameters['runtime']['NAME__'.$lang] = array(
			'data_type' => $road,
			'reference' => array(
				'=this.ID' => 'ref.'.$class::getReferenceFieldName(),
				'=ref.'. $class::getLanguageFieldName() => array('?', ToLower($lang)) // oracle is case-sensitive
			),
			'join_type' => 'left'
		);

		if(!isset($parameters['select']))
			$parameters['select'] = array();
		foreach($fldSubMap as $code => $fld)
			$parameters['select'][$code.'_'.$lang] = 'NAME__'.$lang.'.'.$code;
	}

	// filter
	if(self::checkUseFilter())
	{
		foreach($languages as $lang)
		{
			$lang = ToUpper($lang);

			foreach($fldSubMap as $code => $fld)
			{
				$key = 'find_'.$code.'_'.$lang;

				if($GLOBALS[$key] <> '')
				{
					$parameters['filter'][static::getFilterModifier($fld['data_type']).'NAME__'.$lang.'.'.$code] = $GLOBALS[$key];
				}
			}
		}
	}

	return $parameters;
}