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

	if (isset($arParams["groups"]) && is_array($arParams["groups"]) && $arParams["groups"]["disabled"] == "true")
	{
		return false;
	}

	if(!$USER->CanDoOperation('view_groups'))
		return false;

	$elements = $last = "";
	$arFinderParams = array(
		"PROVIDER" => $this->id,
		"TYPE" => 1,
	);

	$arLRU = CAccess::GetLastRecentlyUsed($this->id);

	$res = CGroup::GetList('sort', 'asc', array("ANONYMOUS"=>"N"));
	while($arGroup = $res->Fetch())
	{
		$arItem = array(
			"ID" => "G".$arGroup["ID"],
			"NAME" => $arGroup["NAME"],
		);

		$element = CFinder::GetFinderItem($arFinderParams, $arItem);
		$elements .= $element;

		if(in_array($arItem["ID"], $arLRU))
			$last .= $element;
	}

	$arPanels = array(
		array(
			"NAME" => GetMessage("authprov_last"),
			"ELEMENTS" => $last,
		),
		array(
			"NAME" => GetMessage("authprov_all_groups"),
			"ELEMENTS" => $elements,
		),
		array(
			"NAME" => GetMessage("authprov_search"),
			"ELEMENTS" => CFinder::GetFinderItem(array("TYPE" => "text"), array("TEXT" => GetMessage("authprov_group_name"))),
			"SEARCH" => "Y",
		),
	);
	$html = CFinder::GetFinderAppearance($arFinderParams, $arPanels);

	return array("HTML"=>$html);
}