diff --git a/page_manager/page_manager.module b/page_manager/page_manager.module index 62f6d27..d3d338a 100644 --- a/page_manager/page_manager.module +++ b/page_manager/page_manager.module @@ -213,6 +213,30 @@ function page_manager_menu_alter(&$items) { } } + // Override the core node revisions display to use the configured Page + // display handler. + if (!variable_get('page_manager_node_view_disabled', TRUE) && isset($items['node/%node/revisions/%/view'])) { + // Abstract the basic settings. + $item = array( + // Handle the page arguments. + 'load arguments' => array(3), + 'page arguments' => array(1, TRUE), + + // Replace the normal node_show call with Page Manager's node view. + 'page callback' => 'page_manager_node_view_page', + + // Provide the correct path to the Page Manager file. + 'file' => 'node_view.inc', + 'file path' => drupal_get_path('module', 'page_manager') . '/plugins/tasks', + ); + // Re-build the menu item using the normal values from node.module. + $items['node/%node/revisions/%/view'] = array( + 'title' => 'Revisions', + 'access callback' => '_node_revision_access', + 'access arguments' => array(1), + ) + $item; + } + return $items; }