diff options
author | Dries Buytaert <dries@buytaert.net> | 2004-09-16 07:17:56 +0000 |
---|---|---|
committer | Dries Buytaert <dries@buytaert.net> | 2004-09-16 07:17:56 +0000 |
commit | 5c7983c4deae55ad41b85ca99db54d3fce283fd9 (patch) | |
tree | 59801cd96a36c390586752c58d6cf5ba50c230ce /modules/menu | |
parent | 6f0fd3aa55659f8bd6b023e8e82e990326c1b788 (diff) | |
download | brdo-5c7983c4deae55ad41b85ca99db54d3fce283fd9.tar.gz brdo-5c7983c4deae55ad41b85ca99db54d3fce283fd9.tar.bz2 |
- Patch #8179 by JonBob: reintroduced menu caching.
Diffstat (limited to 'modules/menu')
-rw-r--r-- | modules/menu/menu.module | 75 |
1 files changed, 38 insertions, 37 deletions
diff --git a/modules/menu/menu.module b/modules/menu/menu.module index 916c31903..fb3c042fb 100644 --- a/modules/menu/menu.module +++ b/modules/menu/menu.module @@ -9,42 +9,45 @@ /** * Implementation of hook_menu(). */ -function menu_menu() { +function menu_menu($may_cache) { $items = array(); - $items[] = array('path' => 'admin/menu', 'title' => t('menus'), - 'callback' => 'menu_overview', - 'access' => user_access('administer menu')); - $items[] = array('path' => 'admin/menu/item/edit', 'title' => t('edit menu item'), - 'callback' => 'menu_edit_item', - 'access' => user_access('administer menu'), - 'type' => MENU_CALLBACK); - $items[] = array('path' => 'admin/menu/item/reset', 'title' => t('reset menu item'), - 'callback' => 'menu_reset_item', - 'access' => user_access('administer menu'), - 'type' => MENU_CALLBACK); - $items[] = array('path' => 'admin/menu/item/disable', 'title' => t('disable menu item'), - 'callback' => 'menu_disable_item', - 'access' => user_access('administer menu'), - 'type' => MENU_CALLBACK); - $items[] = array('path' => 'admin/menu/item/delete', 'title' => t('delete menu item'), - 'callback' => 'menu_delete_item', - 'access' => user_access('administer menu'), - 'type' => MENU_CALLBACK); - - $items[] = array('path' => 'admin/menu/list', 'title' => t('list'), - 'type' => MENU_DEFAULT_LOCAL_TASK, 'weight' => -10); - $items[] = array('path' => 'admin/menu/menu/add', 'title' => t('add menu'), - 'callback' => 'menu_add_menu', - 'access' => user_access('administer menu'), - 'type' => MENU_LOCAL_TASK); - $items[] = array('path' => 'admin/menu/item/add', 'title' => t('add menu item'), - 'callback' => 'menu_edit_item', - 'access' => user_access('administer menu'), - 'type' => MENU_LOCAL_TASK); - $items[] = array('path' => 'admin/menu/reset', 'title' => t('reset menus'), - 'callback' => 'menu_reset', - 'access' => user_access('administer menu'), - 'type' => MENU_LOCAL_TASK); + + if ($may_cache) { + $items[] = array('path' => 'admin/menu', 'title' => t('menus'), + 'callback' => 'menu_overview', + 'access' => user_access('administer menu')); + $items[] = array('path' => 'admin/menu/item/edit', 'title' => t('edit menu item'), + 'callback' => 'menu_edit_item', + 'access' => user_access('administer menu'), + 'type' => MENU_CALLBACK); + $items[] = array('path' => 'admin/menu/item/reset', 'title' => t('reset menu item'), + 'callback' => 'menu_reset_item', + 'access' => user_access('administer menu'), + 'type' => MENU_CALLBACK); + $items[] = array('path' => 'admin/menu/item/disable', 'title' => t('disable menu item'), + 'callback' => 'menu_disable_item', + 'access' => user_access('administer menu'), + 'type' => MENU_CALLBACK); + $items[] = array('path' => 'admin/menu/item/delete', 'title' => t('delete menu item'), + 'callback' => 'menu_delete_item', + 'access' => user_access('administer menu'), + 'type' => MENU_CALLBACK); + + $items[] = array('path' => 'admin/menu/list', 'title' => t('list'), + 'type' => MENU_DEFAULT_LOCAL_TASK, 'weight' => -10); + $items[] = array('path' => 'admin/menu/menu/add', 'title' => t('add menu'), + 'callback' => 'menu_add_menu', + 'access' => user_access('administer menu'), + 'type' => MENU_LOCAL_TASK); + $items[] = array('path' => 'admin/menu/item/add', 'title' => t('add menu item'), + 'callback' => 'menu_edit_item', + 'access' => user_access('administer menu'), + 'type' => MENU_LOCAL_TASK); + $items[] = array('path' => 'admin/menu/reset', 'title' => t('reset menus'), + 'callback' => 'menu_reset', + 'access' => user_access('administer menu'), + 'type' => MENU_LOCAL_TASK); + } return $items; } @@ -334,8 +337,6 @@ function menu_edit_item_save($edit) { drupal_set_message(t('Since a menu item %old already exists for %path, this new menu item was created as a shortcut to that location.', array('%old' => l('<em>'. $old_item['title'] .'</em>', 'admin/menu/item/edit/'. $old_mid), '%path' => '<em>'. $edit['path'] .'</em>'))); } } - - menu_rebuild(); } /** |