You are here

function subform_element_submit in Subform 7

Submit handler for submitting a single subform.

Parameters

$form: An associative array containing the structure of the parent form.

$form_state: A keyed array containing the current state of the parent form.

1 string reference to 'subform_element_submit'
subform_element_info in ./subform.module
Implements hook_element_info().

File

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

Code

function subform_element_submit(&$form, &$form_state) {
  if ($form_state['triggering_element']['#type'] == 'subform') {
    $subform_state =& subform_get_state($form_state['triggering_element']['#name'], $form_state);
    $subform_element =& subform_array_get_nested_value($form, $subform_state['subform_element_parents'], $subform_exists);
    if ($subform_exists) {
      subform_buffer('start', $subform_element);
      subform_submit_subform($subform_element['#subform']['#form_id'], $subform_element['#subform'], $subform_state);

      // Always display errors of subforms requested specifically to submit.
      subform_buffer('end', $subform_element, TRUE);

      // As this submit handler only executes the subform, rebuild the
      // parent form, but only if subform element does not have
      // #limit_validation_errors set.
      $form_state['rebuild'] = empty($subform_element['#limit_validation_errors']);
    }
  }
}