• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/classes/general/ratings.php
  • Класс: CAllRatings
  • Вызов: CAllRatings::GetList
static function GetList($arSort=array(), $arFilter=Array())
{
	global $DB;

	$arSqlSearch = Array();

	$err_mess = (CRatings::err_mess())."
Function: GetList
Line: "; if (is_array($arFilter)) { foreach ($arFilter as $key => $val) { if ((string)$val == '' || $val === "NOT_REF") continue; switch(mb_strtoupper($key)) { case "ID": $arSqlSearch[] = GetFilterQuery("R.ID", $val, "N"); break; case "ACTIVE": if(in_array($val, Array('Y', 'N'))) { $arSqlSearch[] = "R.ACTIVE = '".$val."'"; } break; case "AUTHORITY": if(in_array($val, Array('Y', 'N'))) { $arSqlSearch[] = "R.AUTHORITY = '".$val."'"; } break; case "POSITION": if(in_array($val, Array('Y', 'N'))) { $arSqlSearch[] = "R.POSITION = '".$val."'"; } break; case "CALCULATED": if(in_array($val, Array('Y', 'N', 'C'))) { $arSqlSearch[] = "R.CALCULATED = '".$val."'"; } break; case "NAME": $arSqlSearch[] = GetFilterQuery("R.NAME", $val); break; case "ENTITY_ID": $arSqlSearch[] = GetFilterQuery("R.ENTITY_ID", $val); break; } } } $sOrder = ""; foreach($arSort as $key=>$val) { $ord = (mb_strtoupper($val) <> "ASC"? "DESC":"ASC"); switch(mb_strtoupper($key)) { case "ID": $sOrder .= ", R.ID ".$ord; break; case "NAME": $sOrder .= ", R.NAME ".$ord; break; case "CREATED": $sOrder .= ", R.CREATED ".$ord; break; case "LAST_MODIFIED": $sOrder .= ", R.LAST_MODIFIED ".$ord; break; case "LAST_CALCULATED": $sOrder .= ", R.LAST_CALCULATED ".$ord; break; case "ACTIVE": $sOrder .= ", R.ACTIVE ".$ord; break; case "AUTHORITY": $sOrder .= ", R.AUTHORITY ".$ord; break; case "POSITION": $sOrder .= ", R.POSITION ".$ord; break; case "STATUS": $sOrder .= ", R.CALCULATED ".$ord; break; case "CALCULATED": $sOrder .= ", R.CALCULATED ".$ord; break; case "CALCULATION_METHOD": $sOrder .= ", R.CALCULATION_METHOD ".$ord; break; case "ENTITY_ID": $sOrder .= ", R.ENTITY_ID ".$ord; break; } } if ($sOrder == '') $sOrder = "R.ID DESC"; $strSqlOrder = " ORDER BY ".TrimEx($sOrder,","); $strSqlSearch = GetFilterSqlSearch($arSqlSearch); $strSql = " SELECT R.ID, R.NAME, R.ACTIVE, R.CALCULATED, R.AUTHORITY, R.POSITION, R.ENTITY_ID, R.CALCULATION_METHOD, ".$DB->DateToCharFunction("R.CREATED")." CREATED, ".$DB->DateToCharFunction("R.LAST_MODIFIED")." LAST_MODIFIED, ".$DB->DateToCharFunction("R.LAST_CALCULATED")." LAST_CALCULATED FROM b_rating R WHERE ".$strSqlSearch." ".$strSqlOrder; return $DB->Query($strSql, false, $err_mess.__LINE__); }