You are here

function social_group_flexible_group_can_join_directly in Open Social 8.6

Same name and namespace in other branches
  1. 8.9 modules/social_features/social_group/modules/social_group_flexible_group/social_group_flexible_group.module \social_group_flexible_group_can_join_directly()
  2. 8.7 modules/social_features/social_group/modules/social_group_flexible_group/social_group_flexible_group.module \social_group_flexible_group_can_join_directly()
  3. 8.8 modules/social_features/social_group/modules/social_group_flexible_group/social_group_flexible_group.module \social_group_flexible_group_can_join_directly()
  4. 10.3.x modules/social_features/social_group/modules/social_group_flexible_group/social_group_flexible_group.module \social_group_flexible_group_can_join_directly()
  5. 10.0.x modules/social_features/social_group/modules/social_group_flexible_group/social_group_flexible_group.module \social_group_flexible_group_can_join_directly()
  6. 10.1.x modules/social_features/social_group/modules/social_group_flexible_group/social_group_flexible_group.module \social_group_flexible_group_can_join_directly()
  7. 10.2.x modules/social_features/social_group/modules/social_group_flexible_group/social_group_flexible_group.module \social_group_flexible_group_can_join_directly()

Check if a user can join the group directly.

Parameters

\Drupal\group\Entity\Group $group: The group we are checking.

Return value

bool TRUE when users can join.

2 calls to social_group_flexible_group_can_join_directly()
FlexibleGroupJoinPermissionAccessCheck::calculateJoinPermission in modules/social_features/social_group/modules/social_group_flexible_group/src/Access/FlexibleGroupJoinPermissionAccessCheck.php
Calculates permissions for LU users also including administrative roles.
social_group_flexible_group_block_access in modules/social_features/social_group/modules/social_group_flexible_group/social_group_flexible_group.module
Implements hook_block_access().

File

modules/social_features/social_group/modules/social_group_flexible_group/social_group_flexible_group.module, line 114
The Social Group Flexible Group module.

Code

function social_group_flexible_group_can_join_directly(Group $group) {
  $join_methods = $group
    ->get('field_group_allowed_join_method')
    ->getValue();
  if (!in_array('direct', array_column($join_methods, 'value'), FALSE)) {
    return FALSE;
  }
  return TRUE;
}