- Модуль: socialnetwork
- Путь к файлу: ~/bitrix/modules/socialnetwork/lib/helper/workgroup/access.php
- Класс: BitrixSocialnetworkHelperWorkgroupAccess
- Вызов: Access::canJoin
static function canJoin(array $params = []): bool
{
$groupId = (int)($params['groupId'] ?? 0);
$userId = ($params['userId'] ?? HelperUser::getCurrentUserId());
if (
$groupId <= 0
|| $userId <= 0
)
{
return false;
}
$group = WorkgroupTable::getList([
'filter' => [
'=ID' => $groupId,
],
'select' => [ 'ID', 'CLOSED', 'VISIBLE' ],
])->fetchObject();
if (!$group)
{
return false;
}
$currentUserRelation = UserToGroupTable::getList([
'filter' => [
'=GROUP_ID' => $groupId,
'=USER_ID' => $userId,
],
'select' => [ 'ID', 'ROLE', 'USER_ID', 'GROUP_ID', 'INITIATED_BY_TYPE' ],
])->fetchObject();
$accessManager = new AccessManager(
$group,
null,
$currentUserRelation
);
return $accessManager->canJoin();
}