• Модуль: search
  • Путь к файлу: ~/bitrix/modules/search/classes/general/search.php
  • Класс: CAllSearch
  • Вызов: CAllSearch::CheckPermissions
static function CheckPermissions($FIELD = "sc.ID")
{
	global $USER;

	$arResult = array();

	if ($USER->IsAdmin())
	{
		$arResult[] = "1=1";
	}
	else
	{
		if ($USER->GetID() > 0)
		{
			CSearchUser::CheckCurrentUserGroups();
			$arResult[] = "
				EXISTS (
					SELECT 1
					FROM b_search_content_right scg
					WHERE ".$FIELD." = scg.SEARCH_CONTENT_ID
					AND scg.GROUP_CODE IN (
						SELECT GROUP_CODE FROM b_search_user_right
						WHERE USER_ID = ".$USER->GetID()."
					)
				)";
		}
		else
		{
			$arResult[] = "
				EXISTS (
					SELECT 1
					FROM b_search_content_right scg
					WHERE ".$FIELD." = scg.SEARCH_CONTENT_ID
					AND scg.GROUP_CODE = 'G2'
				)";
		}
	}
	return "((".implode(") OR (", $arResult)."))";
}