Index: clone.module =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/node_clone/clone.module,v retrieving revision 1.23 diff -u -r1.23 clone.module --- clone.module 15 Oct 2008 18:39:44 -0000 1.23 +++ clone.module 11 Jun 2009 18:41:42 -0000 @@ -91,6 +91,40 @@ } /** + * Implementation of hook_block(). + */ +function clone_block($op = 'list', $delta = 0, $edit = array()) { + switch ($op) { + case 'list': + $blocks['clone_node_form'] = array( + 'info' => t('Clone Node Form'), + 'cache' => BLOCK_CACHE_PER_PAGE | BLOCK_CACHE_PER_ROLE, + ); + return $blocks; + break; + case 'view': + if ($delta = 'clone_node_form') { + // Only show the clone node form when viewing the node. + $arg2 = arg(2); + if (arg(0) == 'node' && is_numeric(arg(1)) && empty($arg2)) { + $node = node_load(arg(1)); + // Make sure we want to show the clone form. + if (clone_access($node)) { + module_load_include('inc', 'node', 'node.pages'); + module_load_include('inc', 'clone', 'clone.pages'); + $block = array( + 'subject' => t('Clone'), + 'content' => clone_node_prepopulate($node, FALSE), + ); + return $block; + } + } + } + break; + } +} + +/** * Implementation of hook_views_api. */ function clone_views_api() { Index: clone.pages.inc =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/node_clone/clone.pages.inc,v retrieving revision 1.3 diff -u -r1.3 clone.pages.inc --- clone.pages.inc 7 May 2008 02:28:58 -0000 1.3 +++ clone.pages.inc 11 Jun 2009 18:41:42 -0000 @@ -105,7 +105,7 @@ /** * Clones a node - prepopulate a node editing form */ -function clone_node_prepopulate($original_node) { +function clone_node_prepopulate($original_node, $set_title = TRUE) { if (isset($original_node->nid)) { global $user; @@ -124,7 +124,9 @@ $node->path = NULL; $node->files = array(); $node->title = t('Clone of !title', array('!title' => $node->title)); - drupal_set_title(check_plain($node->title)); + if ($set_title) { + drupal_set_title(check_plain($node->title)); + } if (variable_get('clone_reset_'. $node->type, FALSE)) { $node_options = variable_get('node_options_'. $node->type, array('status', 'promote'));