• Модуль: search
  • Путь к файлу: ~/bitrix/modules/search/classes/general/user.php
  • Класс: CSearchUser
  • Вызов: CSearchUser::CheckCurrentUserGroups
static function CheckCurrentUserGroups()
{
	global $USER;
	$user_id = is_object($USER)? intval($USER->GetID()): 0;

	if ($user_id > 0)
	{
		$arGroupCodes = array('AU', 'U'.$user_id); // Authorized
		foreach ($USER->GetUserGroupArray() as $group_id)
		{
			$arGroupCodes[] = 'G'.$group_id;
		}

		foreach (GetModuleEvents("search", "OnSearchCheckPermissions", true) as $arEvent)
		{
			$arCodes = ExecuteModuleEventEx($arEvent, array(null));
			if (is_array($arCodes))
			{
				$arGroupCodes = array_merge($arGroupCodes, $arCodes);
			}
		}

		$ob = new CSearchUser($user_id);
		$ob->SetGroups($arGroupCodes);
	}
}