You are here

function social_group_invite_form_alter in Open Social 8.9

Same name and namespace in other branches
  1. 10.3.x modules/social_features/social_group/modules/social_group_invite/social_group_invite.module \social_group_invite_form_alter()
  2. 10.0.x modules/social_features/social_group/modules/social_group_invite/social_group_invite.module \social_group_invite_form_alter()
  3. 10.1.x modules/social_features/social_group/modules/social_group_invite/social_group_invite.module \social_group_invite_form_alter()
  4. 10.2.x modules/social_features/social_group/modules/social_group_invite/social_group_invite.module \social_group_invite_form_alter()

Implements hook_form_alter().

File

modules/social_features/social_group/modules/social_group_invite/social_group_invite.module, line 322
The Social Invite group module.

Code

function social_group_invite_form_alter(&$form, FormStateInterface $form_state, $form_id) {

  // We need to write a custom form alter, since the ginvite module
  // has it's own routes, with no group context that loads the
  // join form. Decline is done differently. Due to the fact on joining
  // users need to fill in their membership fields.
  $social_group_types = [
    'open_group',
    'closed_group',
    'public_group',
  ];

  // Also include any added optional group types.
  \Drupal::moduleHandler()
    ->alter('social_group_types', $social_group_types);
  $join_forms = [];
  foreach ($social_group_types as $social_group_type) {
    $join_forms[] = "group_content_{$social_group_type}-group_membership_group-join_form";
  }

  // Perform alterations on joining / leaving groups.
  if (in_array($form_id, $join_forms)) {

    // Add custom redirect form submit.
    $form['actions']['submit']['#submit'][] = '_social_group_invite_action_form_submit';
  }
}