You are here

function theme_og_ui_admin_new_role in Organic groups 7.2

Theme the new role form.

File

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

Code

function theme_og_ui_admin_new_role($variables) {
  $form = $variables['form'];
  $header = array(
    t('Name'),
    array(
      'data' => t('Operations'),
      'colspan' => 2,
    ),
  );
  $group_type = $form['group_type']['#value'];
  $gid = $form['gid']['#value'];
  $bundle = $form['bundle']['#value'];
  $role_names = $form['role_names']['#value'];
  if ($gid) {
    $group = entity_load_single($group_type, $gid);
    $default_access = $group && og_is_group_default_access($group_type, $group);
  }
  else {
    $default_access = FALSE;
  }
  foreach ($role_names as $rid => $name) {
    $text = !$default_access ? t('edit permissions') : t('view permissions');
    $path = $gid ? "group/{$group_type}/{$gid}/admin" : 'admin/config/group';
    $permissions = l($text, "{$path}/permission/{$rid}/edit");
    if (!$default_access && !in_array($name, array(
      OG_ANONYMOUS_ROLE,
      OG_AUTHENTICATED_ROLE,
    ))) {
      $rows[] = array(
        check_plain($name),
        l(t('edit role'), "{$path}/role/{$rid}/edit"),
        $permissions,
      );
    }
    else {
      $rows[] = array(
        check_plain($name),
        t('locked'),
        $permissions,
      );
    }
  }
  $rows[] = array(
    array(
      'data' => drupal_render($form['name']) . drupal_render($form['add']),
      'colspan' => 4,
      'class' => 'edit-name',
    ),
  );
  hide($form['actions']);
  $output = drupal_render_children($form);
  $output .= theme('table', array(
    'header' => $header,
    'rows' => $rows,
  ));
  $output .= render($form['actions']);
  return $output;
}