• Модуль: socialnetwork
  • Путь к файлу: ~/bitrix/modules/socialnetwork/classes/general/log_rights.php
  • Класс: CSocNetLogRights
  • Вызов: CSocNetLogRights::GetList
static function GetList($aSort=array(), $aFilter=array())
{
	global $DB;

	$arFilter = array();
	foreach($aFilter as $key=>$val)
	{
		$val = $DB->ForSql($val);
		if($val == '')
		{
			continue;
		}

		switch(mb_strtoupper($key))
		{
			case "ID":
				$arFilter[] = "R.ID=".intval($val);
				break;
			case "LOG_ID":
				$arFilter[] = "R.LOG_ID=".intval($val);
				break;
			case "GROUP_CODE":
				$arFilter[] = "R.GROUP_CODE='".$val."'";
				break;
		}
	}

	$arOrder = array();
	foreach($aSort as $key=>$val)
	{
		$ord = (mb_strtoupper($val) <> "ASC"?"DESC":"ASC");
		switch(mb_strtoupper($key))
		{
			case "ID":
				$arOrder[] = "R.ID ".$ord;
				break;
			case "LOG_ID":
				$arOrder[] = "R.LOG_ID ".$ord;
				break;
			case "GROUP_CODE":
				$arOrder[] = "R.GROUP_CODE ".$ord;
				break;
		}
	}

	$sOrder = (count($arOrder) > 0 ? "n ORDER BY ".implode(", ",$arOrder) : "");

	if(count($arFilter) == 0)
		$sFilter = "";
	else
		$sFilter = "nWHERE ".implode("nAND ", $arFilter);

	$strSql = "
		SELECT
			R.ID
			,R.LOG_ID
			,R.GROUP_CODE
		FROM
			b_sonet_log_right R
		".$sFilter.$sOrder;

	return $DB->Query($strSql, false, "File: ".__FILE__."
Line: ".__LINE__); }