• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/classes/general/hot_keys.php
  • Класс: CHotKeysCode
  • Вызов: CHotKeysCode::GetList
public function GetList($aSort = array(), $arFilter = array(), $showEmptyName = true)
{
	global $DB;
	$arSqlSearch = array();
	if (is_array($arFilter))
	{
		foreach ($arFilter as $key => $val)
		{
			if ((string)$val == '' || $val == "NOT_REF")
				continue;
			$key = mb_strtoupper($key);
			switch($key)
			{
				case "ID":
					$arSqlSearch[] = "C.ID=".intval($val);
					break;
				case "CLASS_NAME":
				case "CODE":
				case "NAME":
				case "COMMENTS":
				case "TITLE_OBJ":
				case "URL":
				case "IS_CUSTOM":
					$arSqlSearch[] = GetFilterQuery("C.".$key, $val);
					break;
			}
		}
	}

	if(!$showEmptyName)
		$arSqlSearch[] = "C.NAME IS NOT NULL AND C.NAME<>'-=AUTONAME=-'";

	$sOrder = "";
	foreach($aSort as $key => $val)
	{
		$ord = (mb_strtoupper($val) <> "ASC"? "DESC":"ASC");
		switch(mb_strtoupper($key))
		{
			case "ID":
				$sOrder .= ", C.ID ".$ord;
				break;
			case "CLASS_NAME":
				$sOrder .= ", C.CLASS_NAME ".$ord;
				break;
			case "CODE":
				$sOrder .= ", C.CODE ".$ord;
				break;
			case "NAME":
				$sOrder .= ", C.NAME ".$ord;
				break;
			case "COMMENTS":
				$sOrder .= ", C.COMMENTS ".$ord;
				break;
			case "TITLE_OBJ":
				$sOrder .= ", C.TITLE_OBJ ".$ord;
				break;
			case "URL":
				$sOrder .= ", C.URL ".$ord;
				break;
			case "IS_CUSTOM":
				$sOrder .= ", C.IS_CUSTOM ".$ord;
				break;
		}
	}
	if ($sOrder == '')
		$sOrder = "NAME ASC";

	$strSqlOrder = " ORDER BY ".TrimEx($sOrder, ",");
	$strSqlSearch = GetFilterSqlSearch($arSqlSearch);
	$strSql = "
		SELECT
			C.*
		FROM
			b_hot_keys_code C
		WHERE
		".$strSqlSearch."
		".$strSqlOrder;

	$res = $DB->Query($strSql, false, $this->ErrOrig()." Line: ".__LINE__);
	return $res;
}