function menu_execute_active_handler

You are here

7 menu.inc menu_execute_active_handler($path = NULL, $deliver = TRUE)
4.6 menu.inc menu_execute_active_handler()
4.7 menu.inc menu_execute_active_handler()
5 menu.inc menu_execute_active_handler()
6 menu.inc menu_execute_active_handler($path = NULL)

Execute the page callback associated with the current path

Related topics

4 calls to menu_execute_active_handler()
drupal_access_denied in includes/common.inc
Generates a 403 error if the request is not allowed.
drupal_not_found in includes/common.inc
Generates a 404 error if the request can not be handled.
index.php in ./index.php
The PHP page that serves all page requests on a Drupal installation.
user_page in modules/user/user.pages.inc
Access callback for path /user.

File

includes/menu.inc, line 336
API for the Drupal menu system.

Code

function menu_execute_active_handler($path = NULL) {
  if (_menu_site_is_offline()) {
    return MENU_SITE_OFFLINE;
  }
  // Rebuild if we know it's needed, or if the menu masks are missing which
  // occurs rarely, likely due to a race condition of multiple rebuilds.
  if (variable_get('menu_rebuild_needed', FALSE) || !variable_get('menu_masks', array())) {
    menu_rebuild();
  }
  if ($router_item = menu_get_item($path)) {
    if ($router_item['access']) {
      if ($router_item['file']) {
        require_once ($router_item['file']);
      }
      return call_user_func_array($router_item['page_callback'], $router_item['page_arguments']);
    }
    else {
      return MENU_ACCESS_DENIED;
    }
  }
  return MENU_NOT_FOUND;
}