You are here

function og_ui_add_users_submit in Organic groups 7.2

Same name and namespace in other branches
  1. 7 og_ui/og_ui.admin.inc \og_ui_add_users_submit()

Submit handler; Add users to group.

File

og_ui/og_ui.admin.inc, line 251
Admin settings for Organic groups module.

Code

function og_ui_add_users_submit($form, &$form_state) {
  $group_type = $form_state['values']['group_type'];
  $gid = $form_state['values']['gid'];
  $state = $form_state['values']['state'];
  $og_membership = $form_state['og_membership'];

  // Set the user and state.
  field_attach_submit('og_membership', $og_membership, $form['membership_fields'], $form_state);
  $account = user_load_by_name($form_state['values']['name']);

  // Ungroup user, in case they were already registered.
  og_ungroup($group_type, $gid, 'user', $account);
  $og_membership->etid = $account->uid;
  $og_membership->state = $state;
  $og_membership
    ->save();

  // Assign roles.
  if (!empty($form_state['values']['roles'])) {
    foreach ($form_state['values']['roles'] as $rid) {
      og_role_grant($group_type, $gid, $og_membership->etid, $rid);
    }
  }
  $group = entity_load_single($group_type, $gid);
  drupal_set_message(t('%user has been added to the group %group-title.', array(
    '%user' => format_username($account),
    '%group-title' => entity_label($group_type, $group),
  )));
}