You are here

function variable_realm_form_key_selector in Variable 7

Same name and namespace in other branches
  1. 7.2 variable_realm/variable_realm.form.inc \variable_realm_form_key_selector()

Key selector for realm forms.

3 calls to variable_realm_form_key_selector()
variable_realm_admin_realm_edit in variable_realm_admin/variable_realm_admin.pages.inc
Edit variables for realm.
variable_realm_union_variable_settings_form_alter in variable_realm_union/variable_realm_union.variable.inc
Implements hook_variable_settings_form_alter().
variable_realm_variable_settings_form_alter in variable_realm/variable_realm.variable.inc
Implements hook_variable_settings_form_alter().

File

variable_realm/variable_realm.form.inc, line 130
Administrative forms for variable realms.

Code

function variable_realm_form_key_selector($realm_name, $current_key) {
  $element_name = VARIABLE_REALM_FORM_SWITCHER . $realm_name;
  $query_name = 'variable_realm_' . $realm_name . '_key';
  $realm_info = variable_realm_info($realm_name);
  $form[$element_name] = array(
    '#type' => 'fieldset',
    '#title' => t('There are %name variables in this form', array(
      '%name' => $realm_info['variable name'],
    )),
    '#weight' => -100,
    '#description' => t('Check you are editing the variables for the right %realm value or select the desired %realm.', array(
      '%realm' => $realm_info['title'],
    )),
  );

  // Replace only this element on current query string, there may be others.
  $current_query = $_GET;
  unset($current_query['q']);
  foreach (variable_realm_keys($realm_name) as $realm_key => $key_name) {
    $query[VARIABLE_REALM_QUERY_STRING . $realm_name] = $realm_key;
    $link = l($key_name, $_GET['q'], array(
      'query' => $query + $current_query,
    ));
    $items[] = $current_key == $realm_key ? '<strong>' . $link . '</strong>' : $link;
  }
  $form[$element_name]['select_key'] = array(
    '#type' => 'item',
    '#markup' => implode(' | ', $items),
  );
  return $form;
}