From ba12462fc91431b5915e80eb748f342e9a9e33a4 Mon Sep 17 00:00:00 2001 From: Dries Buytaert <dries@buytaert.net> Date: Sat, 24 Dec 2005 13:05:22 +0000 Subject: [PATCH] - Patch #42153 by Junyor: slight clean-up of node_revision_delete(). --- modules/node.module | 21 ++++++++++----------- modules/node/node.module | 21 ++++++++++----------- 2 files changed, 20 insertions(+), 22 deletions(-) diff --git a/modules/node.module b/modules/node.module index fc1f50fb92e2..c4fd58b36277 100644 --- a/modules/node.module +++ b/modules/node.module @@ -1344,28 +1344,27 @@ function node_revision_rollback($nid, $revision) { * Delete the revision with specified revision number. */ function node_revision_delete($nid, $revision) { - if (user_access('administer nodes')) { $node = node_load($nid); if (node_access('delete', $node)) { - $current_revision = db_result(db_query('SELECT vid FROM {node} WHERE nid = %d', $nid)); // Don't delete the current revision - if ($revision != $current_revision) { + if ($revision != $node->vid) { $node = node_load($nid, $revision); db_query("DELETE FROM {node_revisions} WHERE nid = %d AND vid = %d", $nid, $revision); + node_invoke_nodeapi($node, 'delete revision'); + drupal_set_message(t('Deleted %title revision %revision.', array('%title' => theme('placeholder', $node->title), '%revision' => theme('placeholder', $revision)))); + watchdog('content', t('%type: deleted %title revision %revision.', array('%type' => theme('placeholder', t($node->type)), '%title' => theme('placeholder', $node->title), '%revision' => theme('placeholder', $revision)))); + } - node_invoke_nodeapi($node, 'delete revision'); - drupal_set_message(t('Deleted %title revision %revision.', array('%title' => theme('placeholder', $node->title), '%revision' => theme('placeholder', $revision)))); - watchdog('content', t('%type: deleted %title revision %revision.', array('%type' => theme('placeholder', t($node->type)), '%title' => theme('placeholder', $node->title), '%revision' => theme('placeholder', $revision)))); - } - else { - drupal_set_message(t('Deletion failed. You tried to delete the current revision.')); - } + else { + drupal_set_message(t('Deletion failed. You tried to delete the current revision.')); + } - drupal_goto("node/$nid/revisions"); + drupal_goto("node/$nid/revisions"); } } + drupal_access_denied(); } diff --git a/modules/node/node.module b/modules/node/node.module index fc1f50fb92e2..c4fd58b36277 100644 --- a/modules/node/node.module +++ b/modules/node/node.module @@ -1344,28 +1344,27 @@ function node_revision_rollback($nid, $revision) { * Delete the revision with specified revision number. */ function node_revision_delete($nid, $revision) { - if (user_access('administer nodes')) { $node = node_load($nid); if (node_access('delete', $node)) { - $current_revision = db_result(db_query('SELECT vid FROM {node} WHERE nid = %d', $nid)); // Don't delete the current revision - if ($revision != $current_revision) { + if ($revision != $node->vid) { $node = node_load($nid, $revision); db_query("DELETE FROM {node_revisions} WHERE nid = %d AND vid = %d", $nid, $revision); + node_invoke_nodeapi($node, 'delete revision'); + drupal_set_message(t('Deleted %title revision %revision.', array('%title' => theme('placeholder', $node->title), '%revision' => theme('placeholder', $revision)))); + watchdog('content', t('%type: deleted %title revision %revision.', array('%type' => theme('placeholder', t($node->type)), '%title' => theme('placeholder', $node->title), '%revision' => theme('placeholder', $revision)))); + } - node_invoke_nodeapi($node, 'delete revision'); - drupal_set_message(t('Deleted %title revision %revision.', array('%title' => theme('placeholder', $node->title), '%revision' => theme('placeholder', $revision)))); - watchdog('content', t('%type: deleted %title revision %revision.', array('%type' => theme('placeholder', t($node->type)), '%title' => theme('placeholder', $node->title), '%revision' => theme('placeholder', $revision)))); - } - else { - drupal_set_message(t('Deletion failed. You tried to delete the current revision.')); - } + else { + drupal_set_message(t('Deletion failed. You tried to delete the current revision.')); + } - drupal_goto("node/$nid/revisions"); + drupal_goto("node/$nid/revisions"); } } + drupal_access_denied(); } -- GitLab