You are here

function subform_element_rebuild in Subform 7

Constructs a new $subform from the information in $subform_state.

Contains code that is duplicated here.

See also

drupal_rebuild_form()

1 call to subform_element_rebuild()
subform_element_process in ./subform.module
Processes a subform element.

File

./subform.module, line 299
Defines a subform element type.

Code

function subform_element_rebuild($element, &$form_state) {
  $subform_state =& subform_get_state($element['#name'], $form_state);
  if (isset($form_state['rebuild_info'])) {
    $subform_state['rebuild_info'] = $form_state['rebuild_info'];
  }
  $old_subform = isset($subform_state['temporary']['subform_unprocessed']) ? $subform_state['temporary']['subform_unprocessed'] : NULL;
  subform_buffer('start', $element);

  // TODO prevent caching in drupal_rebuild_form() as we are doing it later
  // in subform_parent_after_build().
  $element['#subform'] = drupal_rebuild_form($element['#subform_id'], $subform_state, $old_subform);
  subform_buffer('end', $element, TRUE);
  return $element;
}