diff options
author | Angie Byron <webchick@24967.no-reply.drupal.org> | 2009-05-20 05:39:45 +0000 |
---|---|---|
committer | Angie Byron <webchick@24967.no-reply.drupal.org> | 2009-05-20 05:39:45 +0000 |
commit | 9df38a58a4430e544e484e74bba37825914317f0 (patch) | |
tree | 4658c1303afb68505d8a76f2f5c1d050212d4e0a /modules/node/node.admin.inc | |
parent | 83513d961e358efdb55edd16733679e70f651402 (diff) | |
download | brdo-9df38a58a4430e544e484e74bba37825914317f0.tar.gz brdo-9df38a58a4430e544e484e74bba37825914317f0.tar.bz2 |
#457080 by moshe weitzman: Add node_delete_multiple() for more efficient deletion of lots of nodes.
Diffstat (limited to 'modules/node/node.admin.inc')
-rw-r--r-- | modules/node/node.admin.inc | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/modules/node/node.admin.inc b/modules/node/node.admin.inc index 943dd5c81..60ef89ef5 100644 --- a/modules/node/node.admin.inc +++ b/modules/node/node.admin.inc @@ -620,7 +620,6 @@ function theme_node_admin_nodes($form) { } function node_multiple_delete_confirm(&$form_state, $nodes) { - $form['nodes'] = array('#prefix' => '<ul>', '#suffix' => '</ul>', '#tree' => TRUE); // array_filter returns only elements with TRUE values foreach ($nodes as $nid => $value) { @@ -645,13 +644,10 @@ function node_multiple_delete_confirm(&$form_state, $nodes) { function node_multiple_delete_confirm_submit($form, &$form_state) { if ($form_state['values']['confirm']) { - foreach ($form_state['values']['nodes'] as $nid => $value) { - node_delete($nid); - } - $message = format_plural(count($form_state['values']['nodes']), - 'The item has been deleted.', - 'The items have been deleted.'); - drupal_set_message($message); + node_delete_multiple(array_keys($form_state['values']['nodes'])); + $count = count($form_state['values']['nodes']); + watchdog('content', 'Deleted @count posts.', array('@count' => $count)); + drupal_set_message(t('Deleted @count posts.', array('@count' => $count))); } $form_state['redirect'] = 'admin/content/node'; return; |