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

	$currentUserId = (int)$USER->GetID();
	$arResult = array();

	if ($currentUserId > 0)
	{
		$arResult[] = "SU".$currentUserId."_Z";
		$rsFriends = CSocNetUserRelations::GetList(
			array(),
			array(
				"USER_ID" => $currentUserId,
				"RELATION" => SONET_RELATIONS_FRIEND
			),
			false,
			false,
			array("ID", "FIRST_USER_ID", "SECOND_USER_ID", "DATE_CREATE", "DATE_UPDATE", "INITIATED_BY")
		);
		while ($arFriend = $rsFriends->Fetch())
		{
			if ((int)$arFriend["FIRST_USER_ID"] !== $currentUserId)
			{
				$arResult[] = "SU".$arFriend["FIRST_USER_ID"]."_M";
			}

			if ((int)$arFriend["SECOND_USER_ID"] !== $currentUserId)
			{
				$arResult[] = "SU".$arFriend["SECOND_USER_ID"]."_M";
			}
		}
	}

	$rsGroups = CSocNetUserToGroup::GetList(
		array(),
		array("USER_ID" => $currentUserId),
		false,
		false,
		array("GROUP_ID", "ROLE")
	);
	while($arGroup = $rsGroups->Fetch())
	{
		$arResult[] = "SG".$arGroup["GROUP_ID"]."_".$arGroup["ROLE"];
	}

	return $arResult;
}