• Модуль: learning
  • Путь к файлу: ~/bitrix/modules/learning/classes/general/certification.php
  • Класс: CAllCertification
  • Вызов: CAllCertification::GetFilter
static function GetFilter($arFilter)
{

	if (!is_array($arFilter))
		$arFilter = Array();

	$arSqlSearch = Array();

	foreach ($arFilter as $key => $val)
	{
		$res = CLearnHelper::MkOperationFilter($key);
		$key = $res["FIELD"];
		$cOperationType = $res["OPERATION"];

		$key = mb_strtoupper($key);

		switch ($key)
		{
			case "ID":
			case "STUDENT_ID":
			case "COURSE_ID":
			case "SORT":
			case "SUMMARY":
			case "MAX_SUMMARY":
				$arSqlSearch[] = CLearnHelper::FilterCreate("CER.".$key, $val, "number", $bFullJoin, $cOperationType);
				break;

			case "ACTIVE":
			case "PUBLIC_PROFILE":
			case "FROM_ONLINE":
				$arSqlSearch[] = CLearnHelper::FilterCreate("CER.".$key, $val, "string_equal", $bFullJoin, $cOperationType);
				break;

			case "TIMESTAMP_X":
			case "DATE_CREATE":
				$arSqlSearch[] = CLearnHelper::FilterCreate("CER.".$key, $val, "date", $bFullJoin, $cOperationType);
				break;

			case "USER":
				$arSqlSearch[] = GetFilterQuery("U.ID, U.LOGIN, U.NAME, U.LAST_NAME",$val);
				break;

		}

	}

	return $arSqlSearch;

}