function webform_submission_delete in Webform 6.3
Same name and namespace in other branches
- 5.2 webform_submissions.inc \webform_submission_delete()
- 6.2 webform_submissions.inc \webform_submission_delete()
- 7.4 includes/webform.submissions.inc \webform_submission_delete()
- 7.3 includes/webform.submissions.inc \webform_submission_delete()
Delete a single submission.
Parameters
$nid: ID of node for which this webform was submitted.
$sid: ID of submission to be deleted (from webform_submitted_data).
2 calls to webform_submission_delete()
- webform_results_clear in includes/
webform.report.inc - Delete all submissions for a node.
- webform_submission_delete_form_submit in includes/
webform.submissions.inc
File
- includes/
webform.submissions.inc, line 137 - This file is loaded when handling submissions, either submitting new, editing, or viewing. It also contains all CRUD functions for submissions.
Code
function webform_submission_delete($node, $submission) {
// Iterate through all components and let each do cleanup if necessary.
foreach ($node->webform['components'] as $cid => $component) {
if (isset($submission->data[$cid])) {
webform_component_invoke($component['type'], 'delete', $component, $submission->data[$cid]['value']);
}
}
// Delete any anonymous session information.
if (isset($_SESSION['webform_submission'][$submission->sid])) {
unset($_SESSION['webform_submission'][$submission->sid]);
}
db_query('DELETE FROM {webform_submitted_data} WHERE nid = %d AND sid = %d', $node->nid, $submission->sid);
db_query('DELETE FROM {webform_submissions} WHERE nid = %d AND sid = %d', $node->nid, $submission->sid);
module_invoke_all('webform_submission_delete', $node, $submission);
}