|
@@ -12,14 +12,7 @@
|
|
|
function simplemenu_menu($may_cache) {
|
|
|
$items = array();
|
|
|
|
|
|
- if ($may_cache) {
|
|
|
- $items[] = array(
|
|
|
- 'path' => 'simplemenu/menu',
|
|
|
- 'access' => user_access('view simplemenu'),
|
|
|
- 'callback' => 'simplemenu_get_menu',
|
|
|
- 'type' => MENU_CALLBACK
|
|
|
- );
|
|
|
-
|
|
|
+ if ($may_cache) {
|
|
|
$items[] = array(
|
|
|
'path' => 'admin/settings/simplemenu',
|
|
|
'title' => t('SimpleMenu'),
|
|
@@ -57,6 +50,7 @@ function simplemenu_footer() {
|
|
|
);
|
|
|
|
|
|
drupal_add_js(array('simplemenu' => $settings), 'setting');
|
|
|
+ drupal_add_js('var simplemenu = '. drupal_to_js(simplemenu_get_menu() .';'), 'inline');
|
|
|
drupal_add_js($path .'/simplemenu.js');
|
|
|
}
|
|
|
}
|
|
@@ -130,36 +124,22 @@ function simplemenu_admin_settings() {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * Return a list of devel module links if the module is enabled
|
|
|
- * and the user has access to this module.
|
|
|
+ * Render an HTML list of links for a given menu.
|
|
|
*/
|
|
|
-function simplemenu_get_devel() {
|
|
|
+function simplemenu_get_menu() {
|
|
|
$output = '';
|
|
|
|
|
|
- if (variable_get('simplemenu_devel', 0) && module_exists('devel')) {
|
|
|
- if (user_access('access devel information')) {
|
|
|
- $links[] = l('Devel settings', 'admin/settings/devel', array('title' => t('Adjust module settings for devel module')));
|
|
|
- $links[] = l('Empty cache', 'devel/cache/clear', array('title' => t('Clear the database cache tables which store page, menu, node, and variable caches.')), drupal_get_destination());
|
|
|
- $links[] = l('Phpinfo()', 'admin/logs/status/php');
|
|
|
- $links[] = l('Function reference', 'devel/reference', array('title' => t('View a list of currently defined user functions with documentation links')));
|
|
|
- $links[] = l('Reinstall modules', 'devel/reinstall', array('title' => t('Re-run hook_install() for a given module')));
|
|
|
- $links[] = l('Reset menus', 'devel/menu/reset', array('title' => t('Resets all menu items to their default settings')));
|
|
|
- $links[] = l('Variable editor', 'devel/variable', array('title' => t('Edit and delete site variables')));
|
|
|
- $links[] = l('Session viewer', 'devel/session', array('title' => t('List the contents of $_SESSION')));
|
|
|
-
|
|
|
- if (function_exists('devel_node_access_perm') && user_access(DNA_ACCESS_VIEW)) {
|
|
|
- // True only if devel_node_access enabled.
|
|
|
- $links[] = l('Node access summary', 'devel/node_access/summary');
|
|
|
- }
|
|
|
+ $menu = simplemenu_menu_tree(variable_get('simplemenu_menu', 1));
|
|
|
|
|
|
- $output = '<li class="expanded"><a href="'. url('admin/settings/devel') .'">'. t('Devel module') .'</a><ul>';
|
|
|
- $output .= '<li class="leaf">'. implode($links, '</li><li class="leaf">') .'</li>';
|
|
|
- $output .= '</ul></li>';
|
|
|
- }
|
|
|
+ if (!$menu) {
|
|
|
+ $menu = '<li><a href="'. url('admin/settings/simplemenu') .'">'. t('No menu items found. Try a different menu as the default.') .'</a></li>';
|
|
|
}
|
|
|
|
|
|
+ $output .= simplemenu_get_devel();
|
|
|
+ $output .= $menu;
|
|
|
+
|
|
|
return $output;
|
|
|
-}
|
|
|
+}
|
|
|
|
|
|
/**
|
|
|
* Custom implementation of menu_tree().
|
|
@@ -179,7 +159,7 @@ function simplemenu_menu_tree($pid = 1) {
|
|
|
}
|
|
|
|
|
|
return $output;
|
|
|
-}
|
|
|
+}
|
|
|
|
|
|
/**
|
|
|
* Custom implementation of theme_menu_tree() to call our custom menu above.
|
|
@@ -188,19 +168,36 @@ function simplemenu_theme_menu_tree($pid = 1) {
|
|
|
if ($tree = simplemenu_menu_tree($pid)) {
|
|
|
return '<ul>'. $tree .'</ul>';
|
|
|
}
|
|
|
-}
|
|
|
+}
|
|
|
|
|
|
/**
|
|
|
- * AJAX menu callback to return an HTML list of links for a given menu.
|
|
|
+ * Return a list of devel module links if the module is enabled
|
|
|
+ * and the user has access to this module.
|
|
|
*/
|
|
|
-function simplemenu_get_menu() {
|
|
|
- $menu = simplemenu_menu_tree(variable_get('simplemenu_menu', 1));
|
|
|
+function simplemenu_get_devel() {
|
|
|
+ $output = '';
|
|
|
|
|
|
- if (!$menu) {
|
|
|
- $menu = '<li><a href="'. url('admin/settings/simplemenu') .'">'. t('No menu items found. Try a different menu as the default.') .'</a></li>';
|
|
|
+ if (variable_get('simplemenu_devel', 0) && module_exists('devel')) {
|
|
|
+ if (user_access('access devel information')) {
|
|
|
+ $links[] = l('Devel settings', 'admin/settings/devel', array('title' => t('Adjust module settings for devel module')));
|
|
|
+ $links[] = l('Empty cache', 'devel/cache/clear', array('title' => t('Clear the database cache tables which store page, menu, node, and variable caches.')), drupal_get_destination());
|
|
|
+ $links[] = l('Phpinfo()', 'admin/logs/status/php');
|
|
|
+ $links[] = l('Function reference', 'devel/reference', array('title' => t('View a list of currently defined user functions with documentation links')));
|
|
|
+ $links[] = l('Reinstall modules', 'devel/reinstall', array('title' => t('Re-run hook_install() for a given module')));
|
|
|
+ $links[] = l('Reset menus', 'devel/menu/reset', array('title' => t('Resets all menu items to their default settings')));
|
|
|
+ $links[] = l('Variable editor', 'devel/variable', array('title' => t('Edit and delete site variables')));
|
|
|
+ $links[] = l('Session viewer', 'devel/session', array('title' => t('List the contents of $_SESSION')));
|
|
|
+
|
|
|
+ if (function_exists('devel_node_access_perm') && user_access(DNA_ACCESS_VIEW)) {
|
|
|
+ // True only if devel_node_access enabled.
|
|
|
+ $links[] = l('Node access summary', 'devel/node_access/summary');
|
|
|
+ }
|
|
|
+
|
|
|
+ $output = '<li class="expanded"><a href="'. url('admin/settings/devel') .'">'. t('Devel module') .'</a><ul>';
|
|
|
+ $output .= '<li class="leaf">'. implode($links, '</li><li class="leaf">') .'</li>';
|
|
|
+ $output .= '</ul></li>';
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
- print simplemenu_get_devel();
|
|
|
- print $menu;
|
|
|
- exit;
|
|
|
+ return $output;
|
|
|
}
|