You are here

function social_group_update_8906 in Open Social 10.2.x

Same name and namespace in other branches
  1. 10.3.x modules/social_features/social_group/social_group.install \social_group_update_8906()

Make group creators as a group managers by default.

File

modules/social_features/social_group/social_group.install, line 620
Install, update and uninstall functions for the social_group module.

Code

function social_group_update_8906() {
  $config_factory = \Drupal::configFactory();
  $group_types = [
    'public_group',
    'open_group',
    'closed_group',
  ];
  foreach ($group_types as $group_type) {
    $config = $config_factory
      ->getEditable('group.type.' . $group_type);
    $config
      ->set('creator_membership', TRUE);
    $creator_roles = $config
      ->get('creator_roles');
    $group_role_id = $group_type . '-group_manager';
    if (!in_array($group_role_id, $creator_roles)) {
      $creator_roles[] = $group_role_id;
      $config
        ->set('creator_roles', $creator_roles);
    }
    $config
      ->save(TRUE);
  }
}