- Модуль: socialnetwork
- Путь к файлу: ~/bitrix/modules/socialnetwork/classes/general/search.php
- Класс: CSocNetSearch
- Вызов: CSocNetSearch::GetSearchGroups
static function GetSearchGroups($entity_type, $entity_id, $feature, $operation)
{
$arResult = array();
if($entity_type === "G")
{
$prefix = "SG".$entity_id."_";
$letter = CSocNetFeaturesPerms::GetOperationPerm(SONET_ENTITY_GROUP, $entity_id, $feature, $operation);
switch($letter)
{
case "N"://All
$arResult[] = 'G2';
break;
case "L"://Authorized
$arResult[] = 'AU';
break;
case "K"://Group members includes moderators and admins
$arResult[] = $prefix.'K';
$arResult[] = $prefix.'E';
$arResult[] = $prefix.'A';
break;
case "E"://Moderators includes admins
$arResult[] = $prefix.'E';
$arResult[] = $prefix.'A';
break;
case "A"://Admins
$arResult[] = $prefix.'A';
break;
}
}
else
{
$prefix = "SU".$entity_id."_";
$letter = CSocNetFeaturesPerms::GetOperationPerm(SONET_ENTITY_USER, $entity_id, $feature, $operation);
switch($letter)
{
case "A"://All
$arResult[] = 'G2';
break;
case "C"://Authorized
$arResult[] = 'AU';
break;
case "E"://Friends of friends (has no rights yet) so it counts as
case "M"://Friends
$arResult[] = $prefix.'M';
$arResult[] = $prefix.'Z';
break;
case "Z"://Personal
$arResult[] = $prefix.'Z';
break;
}
}
return $arResult;
}