You are here

function node_user_delete in Drupal 7

Implements hook_user_delete().

File

modules/node/node.module, line 1832
The core that allows content to be submitted to the site. Modules and scripts may programmatically submit nodes using the usual form API pattern.

Code

function node_user_delete($account) {

  // Delete nodes (current revisions).
  // @todo Introduce node_mass_delete() or make node_mass_update() more flexible.
  $nodes = db_select('node', 'n')
    ->fields('n', array(
    'nid',
  ))
    ->condition('uid', $account->uid)
    ->execute()
    ->fetchCol();
  node_delete_multiple($nodes);

  // Delete old revisions.
  $revisions = db_query('SELECT vid FROM {node_revision} WHERE uid = :uid', array(
    ':uid' => $account->uid,
  ))
    ->fetchCol();
  foreach ($revisions as $revision) {
    node_revision_delete($revision);
  }

  // Clean history.
  db_delete('history')
    ->condition('uid', $account->uid)
    ->execute();
}