function workbench_moderation_router_item_page_callback in Workbench Moderation 7.3
Same name and namespace in other branches
- 7 workbench_moderation.node.inc \workbench_moderation_router_item_page_callback()
- 7.2 workbench_moderation.node.inc \workbench_moderation_router_item_page_callback()
Get the menu router item for nodes.
Parameters
$node: The node being acted upon.
Return value
A fully themed node page.
2 calls to workbench_moderation_router_item_page_callback()
- workbench_moderation_node_view_draft in ./
workbench_moderation.node.inc - Displays the current draft the node, if it is not published.
- workbench_moderation_node_view_revision in ./
workbench_moderation.node.inc - Displays a specific revisison of the node.
File
- ./
workbench_moderation.node.inc, line 31 - Provides node functions for Workbench Moderation.
Code
function workbench_moderation_router_item_page_callback($node) {
$router_item = menu_get_item('node/' . $node->nid);
if ($router_item['include_file']) {
require_once DRUPAL_ROOT . '/' . $router_item['include_file'];
}
// Replace the node in the router arguments with the draft node.
foreach ($router_item['page_arguments'] as $index => $arg) {
if (is_object($arg) && isset($arg->nid) && $arg->nid == $node->nid) {
$router_item['page_arguments'][$index] = $node;
}
}
// Call whatever function is assigned to the main node path but pass the
// current node as an argument. This approach allows for the reuse of of Panel
// definition acting on node/%node.
return call_user_func_array($router_item['page_callback'], $router_item['page_arguments']);
}