• Модуль: socialnetwork
  • Путь к файлу: ~/bitrix/modules/socialnetwork/classes/general/authproviders.php
  • Класс: CSocNetGroupAuthProvider
  • Вызов: CSocNetGroupAuthProvider::AjaxRequest
public function AjaxRequest($arParams=false)
{
	global $USER;

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

	$arFilter = array("%NAME" => $search, "ACTIVE"=>"Y");
	if ($arParams["SITE_ID"] <> '')
	{
		$arFilter["SITE_ID"] = $arParams["SITE_ID"];
	}

	if (!CSocNetUser::IsCurrentUserModuleAdmin($arParams["SITE_ID"], ($arParams["SITE_ID"] <> '' ? true : false)))
	{
		$arFilter["CHECK_PERMISSIONS"] = $USER->GetID();
	}

	$rsGroups = CSocNetGroup::GetList(array("NAME" => "ASC"), $arFilter);
	$rsGroups->NavStart(30);
	while ($arGroup = $rsGroups->NavNext(false))
	{
		$arItem = Array(
			"ID" => "SG".$arGroup['ID'],
			"AVATAR" => '/bitrix/js/main/core/images/access/avatar-user-everyone.png',
			"NAME" => Emoji::decode($arGroup['NAME']),
			"DESC" => Emoji::decode($arGroup['DESCRIPTION']),
			"CHECKBOX" => array(
				"#ID#_A" => GetMessage("authprov_sg_a"),
				"#ID#_E" => GetMessage("authprov_sg_e"),
				"#ID#_K" => GetMessage("authprov_sg_k"),
			),
		);
		if($arGroup["IMAGE_ID"])
		{
			$imageFile = CFile::GetFileArray($arGroup["IMAGE_ID"]);
			if ($imageFile !== false)
			{
				$arFileTmp = CFile::ResizeImageGet(
					$imageFile,
					array("width" => 30, "height" => 30),
					BX_RESIZE_IMAGE_PROPORTIONAL,
					false
				);
				$arItem["AVATAR"] = $arFileTmp["src"];
			}
		}
		$elements .= CFinder::GetFinderItem($arFinderParams, $arItem);
	}

	return $elements;
}