• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/classes/general/authproviders.php
  • Класс: CUserAuthProvider
  • Вызов: CUserAuthProvider::AjaxRequest
public function AjaxRequest()
{
	global $USER;
	if(!$USER->CanDoOperation('view_all_users'))
		return false;

	$search = urldecode($_REQUEST['search']);
	$elements = "";
	$arFinderParams = array(
		"PROVIDER" => $this->id,
		"TYPE" => 2,
	);

	$nameFormat = CSite::GetNameFormat(false);

	$arFilter = array(
		'ACTIVE' => 'Y',
		'NAME_SEARCH' => $search,
		'!EXTERNAL_AUTH_ID' => BitrixMainUserTable::getExternalUserTypes(),
	);

	if (
		IsModuleInstalled('intranet')
		|| COption::GetOptionString("main", "new_user_registration_email_confirmation", "N") == "Y"
	)
	{
		$arFilter['CONFIRM_CODE'] = false;
	}

	//be careful with field list because of CUser::FormatName()
	$dbRes = CUser::GetList('last_name', 'asc',
		$arFilter,
		array(
			"FIELDS" => array('ID', 'NAME', 'LAST_NAME', 'SECOND_NAME', 'LOGIN', 'EMAIL'),
			'NAV_PARAMS' => array('nTopCount' => 20),
		)
	);
	while ($arUser = $dbRes->NavNext(false))
	{
		$arItem = array(
			"ID" => "U".$arUser["ID"],
			"NAME" => CUser::FormatName($nameFormat, $arUser, true, false),
		);
		$elements .= CFinder::GetFinderItem($arFinderParams, $arItem);
	}
	return $elements;
}