You are here

function webform_results_clear_form_submit in Webform 7.4

Same name and namespace in other branches
  1. 5.2 webform_report.inc \webform_results_clear_form_submit()
  2. 6.3 includes/webform.report.inc \webform_results_clear_form_submit()
  3. 6.2 webform_report.inc \webform_results_clear_form_submit()
  4. 7.3 includes/webform.report.inc \webform_results_clear_form_submit()

Form submit handler.

File

includes/webform.report.inc, line 372
This file includes helper functions for creating reports for webform.module.

Code

function webform_results_clear_form_submit($form, &$form_state) {
  $nid = $form_state['values']['nid'];
  $node = node_load($nid);

  // Set a modest batch size, due to the inefficiency of the hooks invoked when
  // submissions are deleted.
  $batch_size = min(webform_export_batch_size($node), 500);

  // Set up a batch to clear the results.
  $batch = array(
    'operations' => array(
      array(
        'webform_clear_batch_rows',
        array(
          $node,
          $batch_size,
        ),
      ),
    ),
    'finished' => 'webform_clear_batch_finished',
    'title' => t('Clear submissions'),
    'init_message' => t('Clearing submission data'),
    'error_message' => t('The submissions could not be cleared because an error occurred.'),
    'file' => drupal_get_path('module', 'webform') . '/includes/webform.report.inc',
  );
  batch_set($batch);
  $form_state['redirect'] = 'node/' . $nid . '/webform-results';
}