function quiz_delete in Quiz 7.5
Same name and namespace in other branches
- 5.2 quiz.module \quiz_delete()
- 5 quiz.module \quiz_delete()
- 6.6 quiz.module \quiz_delete()
- 6.2 quiz.module \quiz_delete()
- 6.3 quiz.module \quiz_delete()
- 6.4 quiz.module \quiz_delete()
- 6.5 quiz.module \quiz_delete()
- 7.6 quiz.module \quiz_delete()
- 7 quiz.module \quiz_delete()
- 7.4 quiz.module \quiz_delete()
Implements hook_delete().
Delete Quiz data after its node is deleted.
File
- ./
quiz.module, line 888 - quiz.module Main file for the Quiz module.
Code
function quiz_delete($node) {
// Delete quiz results.
$res = db_query('SELECT result_id FROM {quiz_node_results}
WHERE nid = :nid', array(
':nid' => $node->nid,
));
$result_ids = array();
while ($result_id = $res
->fetchField()) {
$result_ids[] = $result_id;
}
entity_delete_multiple('quiz_result', $result_ids);
// Delete quiz entities.
$res = db_query('SELECT qnp_id FROM {quiz_node_properties}
WHERE nid = :nid', array(
':nid' => $node->nid,
));
$qnp_ids = array();
while ($qnp_id = $res
->fetchField()) {
$qnp_ids[] = $qnp_id;
}
entity_delete_multiple('quiz', $qnp_ids);
// Remove quiz node records from table quiz_node_relationship.
db_delete('quiz_node_relationship')
->condition('parent_nid', $node->nid)
->execute();
// Remove quiz node records from table quiz_node_result_options.
db_delete('quiz_node_result_options')
->condition('nid', $node->nid)
->execute();
}