• Модуль: iblock
  • Путь к файлу: ~/bitrix/modules/iblock/lib/component/elementlist.php
  • Класс: BitrixIblockComponentElementList
  • Вызов: ElementList::getSort
protected function getSort()
{
	$sortFields = $this->getCustomSort();
	if (empty($sortFields))
	{
		if (
			(
				$this->isIblockCatalog
				|| (
					$this->isMultiIblockMode()
					|| (!$this->isMultiIblockMode() && $this->offerIblockExist($this->arParams['IBLOCK_ID']))
				)
			)
			&& $this->arParams['HIDE_NOT_AVAILABLE'] === 'L'
		)
		{
			$sortFields['AVAILABLE'] = 'desc,nulls';
		}

		$field = strtoupper($this->arParams['ELEMENT_SORT_FIELD']);
		if (!isset($sortFields[$field]))
		{
			$sortFields[$field] = $this->arParams['ELEMENT_SORT_ORDER'];
		}

		$field = strtoupper($this->arParams['ELEMENT_SORT_FIELD2']);
		if (!isset($sortFields[$field]))
		{
			$sortFields[$field] = $this->arParams['ELEMENT_SORT_ORDER2'];
		}
		unset($field);
		if (!isset($sortFields['ID']))
		{
			$sortFields['ID'] = 'DESC';
		}
	}

	return $sortFields;
}