You are here

function field_ui_display_overview_multistep_submit in Drupal 7

Form submission handler for buttons in field_ui_display_overview_form().

1 string reference to 'field_ui_display_overview_multistep_submit'
field_ui_display_overview_form in modules/field_ui/field_ui.admin.inc
Form constructor for the field display settings for a given view mode.

File

modules/field_ui/field_ui.admin.inc, line 1240
Administrative interface for custom field type creation.

Code

function field_ui_display_overview_multistep_submit($form, &$form_state) {
  $trigger = $form_state['triggering_element'];
  $op = $trigger['#op'];
  switch ($op) {
    case 'edit':

      // Store the field whose settings are currently being edited.
      $field_name = $trigger['#field_name'];
      $form_state['formatter_settings_edit'] = $field_name;
      break;
    case 'update':

      // Store the saved settings, and set the field back to 'non edit' mode.
      $field_name = $trigger['#field_name'];
      $values = $form_state['values']['fields'][$field_name]['settings_edit_form']['settings'];
      $form_state['formatter_settings'][$field_name] = $values;
      unset($form_state['formatter_settings_edit']);
      break;
    case 'cancel':

      // Set the field back to 'non edit' mode.
      unset($form_state['formatter_settings_edit']);
      break;
    case 'refresh_table':

      // If the currently edited field is one of the rows to be refreshed, set
      // it back to 'non edit' mode.
      $updated_rows = explode(' ', $form_state['values']['refresh_rows']);
      if (isset($form_state['formatter_settings_edit']) && in_array($form_state['formatter_settings_edit'], $updated_rows)) {
        unset($form_state['formatter_settings_edit']);
      }
      break;
  }
  $form_state['rebuild'] = TRUE;
}