diff options
author | Gábor Hojtsy <gabor@hojtsy.hu> | 2007-06-26 20:30:49 +0000 |
---|---|---|
committer | Gábor Hojtsy <gabor@hojtsy.hu> | 2007-06-26 20:30:49 +0000 |
commit | a9749f8b72560ea3d8cb78bdd3252d024f375256 (patch) | |
tree | 5d6a08decb1be654cd2e638d9faa6f8d8aea4d01 /modules/node/node.module | |
parent | 2598d31ef86499a0a3408203d26cbf7e70ef3a86 (diff) | |
download | brdo-a9749f8b72560ea3d8cb78bdd3252d024f375256.tar.gz brdo-a9749f8b72560ea3d8cb78bdd3252d024f375256.tar.bz2 |
#154224 by hunmonk: add destination argument to _drupal_delete(), instead of using drupal_goto() directly, so the callback cycle can complete
Diffstat (limited to 'modules/node/node.module')
-rw-r--r-- | modules/node/node.module | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/modules/node/node.module b/modules/node/node.module index ccc34ae98..892ed6f30 100644 --- a/modules/node/node.module +++ b/modules/node/node.module @@ -1846,7 +1846,15 @@ function node_revision_delete($nid, $revision) { drupal_delete_add_callback(array('node_revision_delete_post' => array($node, $revision))); drupal_delete_add_query('DELETE FROM {node_revisions} WHERE vid = %d', $revision); node_invoke_nodeapi($node, 'delete revision'); - drupal_delete_execute(); + + // Back to revisions page if multiple revisions exist. + if (db_result(db_query('SELECT COUNT(vid) FROM {node_revisions} WHERE nid = %d', $node->nid)) > 2) { + $destination = "node/$node->nid/revisions"; + } + else { + $destination = "node/$node->nid"; + } + drupal_delete_execute($destination); } else { drupal_set_message(t('Deletion failed. You tried to delete the current revision.')); @@ -1864,14 +1872,6 @@ function node_revision_delete_post($node, $revision) { drupal_set_message(t('Deleted %title revision %revision.', array('%title' => $node->title, '%revision' => $revision))); watchdog('content', '@type: deleted %title revision %revision.', array('@type' => t($node->type), '%title' => $node->title, '%revision' => $revision)); - - - if (db_result(db_query('SELECT COUNT(vid) FROM {node_revisions} WHERE nid = %d', $node->nid)) > 1) { - drupal_goto("node/$node->nid/revisions"); - } - else { - drupal_goto("node/$node->nid"); - } } /** |