? taxonomy_menu_hide_vid_or_modulepage_1.patch
Index: taxonomy_menu.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/taxonomy_menu/taxonomy_menu.inc,v
retrieving revision 1.1.2.10
diff -u -p -r1.1.2.10 taxonomy_menu.inc
--- taxonomy_menu.inc	31 Jan 2008 16:23:34 -0000	1.1.2.10
+++ taxonomy_menu.inc	24 Mar 2008 12:02:24 -0000
@@ -73,6 +73,18 @@ function _taxonomy_menu_admin() {
     '#title'          => t('Module page'),
     '#type'           => 'textfield',
   );
+  $form['taxonomy_menu_show_module_page'] = array(
+    '#default_value'  => variable_get('taxonomy_menu_show_module_page', TRUE),
+    '#description'    => t('If checked, links to module page adds to all paths. If checked, path will be like "categories/1/2/3", unchecked - like "1/2/3".'),
+    '#title'          => t('Show link to module page in paths'),
+    '#type'           => 'checkbox',
+  );
+  $form['taxonomy_menu_hide_vid'] = array(
+    '#default_value'  => variable_get('taxonomy_menu_hide_vid', TRUE),
+    '#description'    => t('If checked, links to vocabularies will not shows. Path will be like "categories/2/3" instead of "categories/1/2/3" for vid 1'),
+    '#title'          => t('Show link to module page in paths'),
+    '#type'           => 'checkbox',
+  );
   $form['taxonomy_menu_display_num'] = array(
     '#default_value'  => variable_get('taxonomy_menu_display_num', FALSE),
     '#description'    => t('If checked, number of node per term will be displayed in the menu.'),
@@ -123,17 +135,23 @@ function _taxonomy_menu_menu() {
 
   foreach (taxonomy_get_vocabularies() as $vocabulary) {
     if (variable_get('taxonomy_menu_show_'. $vocabulary->vid, TAXONOMY_MENU_NONE)) {
-      $path =  variable_get('taxonomy_menu_display_page', 'category') .'/'. $vocabulary->vid;
-      $items[$path] = array(
-        'access'          => $access,
-        'callback'        => '__taxonomy_menu_page',
-        'file'            => 'taxonomy_menu.inc',
-        'page callback'   => '__taxonomy_menu_page',
-        'path'            => $path,
-        'title'           => t($vocabulary->name),
-        'weight'          => $vocabulary->weight
-      );
-
+      if(variable_get('taxonomy_menu_show_module_page', TRUE))
+        $path =  variable_get('taxonomy_menu_display_page', 'category') .'/'. $vocabulary->vid;
+      else $path =  $vocabulary->vid;
+      if(variable_get('taxonomy_menu_hide_vid', FALSE)) {
+	$path = variable_get('taxonomy_menu_display_page', 'category');
+      } else {
+	$items[$path] = array(
+	  'access'          => $access,
+	  'callback'        => '__taxonomy_menu_page',
+	  'file'            => 'taxonomy_menu.inc',
+	  'page callback'   => '__taxonomy_menu_page',
+	  'path'            => $path,
+	  'title'           => t($vocabulary->name),
+	  'weight'          => $vocabulary->weight
+	);
+      }
+  
       $tree = taxonomy_get_tree($vocabulary->vid);
       $old_depth = -1;
       $old_path = $path;
Index: taxonomy_menu.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/taxonomy_menu/taxonomy_menu.module,v
retrieving revision 1.17.2.1.2.12
diff -u -p -r1.17.2.1.2.12 taxonomy_menu.module
--- taxonomy_menu.module	31 Jan 2008 16:23:34 -0000	1.17.2.1.2.12
+++ taxonomy_menu.module	24 Mar 2008 12:02:25 -0000
@@ -32,6 +32,8 @@ function __taxonomy_menu_admin() {
 function __taxonomy_menu_admin_submit(&$form_id, &$form) {
   // Save these options
   variable_set('taxonomy_menu_display_page',        $form['taxonomy_menu_display_page']);
+  variable_set('taxonomy_menu_show_module_page',    $form['taxonomy_menu_show_module_page']);
+  variable_set('taxonomy_menu_hide_vid',            $form['taxonomy_menu_hide_vid']);
   variable_set('taxonomy_menu_display_num',         $form['taxonomy_menu_display_num']);
   variable_set('taxonomy_menu_hide_empty',          $form['taxonomy_menu_hide_empty']);
   variable_set('taxonomy_menu_display_descendants', $form['taxonomy_menu_display_descendants']);
