Index: tagadelic.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/tagadelic/tagadelic.module,v
retrieving revision 1.40.2.10
diff -u -p -r1.40.2.10 tagadelic.module
--- tagadelic.module	14 Sep 2009 20:26:06 -0000	1.40.2.10
+++ tagadelic.module	2 Dec 2009 01:29:45 -0000
@@ -70,6 +70,35 @@ function tagadelic_nodeapi(&$node, $op, 
 }
 
 /**
+ * Implementation of hook_form_alter()
+ */
+function tagadelic_form_alter(&$form, $form_state, $form_id) {
+  switch ($form_id) {
+    case 'taxonomy_form_vocabulary':
+      if (isset($form['vid']['#value']) && is_numeric($form['vid']['#value'])) {
+        $form['tagadelic'] = array('#type' => 'fieldset', '#title' => t('Tagadelic Settings'), '#collapsible' => TRUE, '#collapsed' => FALSE);
+        $form['tagadelic']['tagadelic_no_block'] = array(
+          '#type' => 'checkbox',
+          '#title' => t('Display in admin block list'),
+          '#default_value' => variable_get('tagadelic_no_block_'. $form['vid']['#value'], 0),
+          '#description' => t('Check this if you wish the block to be displayed in the admin block list, un-checked means it will not be displayed'),
+        );
+        $form['#submit'][] = 'tagadelic_taxonomy_form_vocabulary_submit';
+      }
+      break;
+  }
+}
+
+/**
+ * Update the tagadelic block information pertaining too the block display
+ */
+function tagadelic_taxonomy_form_vocabulary_submit($form, &$form_state) {
+  if (isset($form_state['values']['vid']) && is_numeric($form_state['values']['vid']) && isset($form_state['values']['tagadelic_no_block'])) {
+    variable_set('tagadelic_no_block_'. $form_state['values']['vid'], $form_state['values']['tagadelic_no_block']);
+  }
+}
+
+/**
  * Menu callback. Admin setting page for tagadelic.
  */
 function tagadelic_settings() {
@@ -376,8 +405,10 @@ function tagadelic_block($op = 'list', $
   }
   elseif ($op == 'list') {
     foreach (taxonomy_get_vocabularies() as $voc) {
-      $blocks[$voc->vid]['info'] = variable_get('tagadelic_block_title_'. $voc->vid, t('Tags in @voc', array('@voc' => $voc->name)));
-      $blocks[$voc->vid]['cache'] = BLOCK_CACHE_GLOBAL;
+      if (variable_get('tagadelic_no_block_'. $voc->vid, 0)) {
+        $blocks[$voc->vid]['info'] = variable_get('tagadelic_block_title_'. $voc->vid, t('Tags in @voc', array('@voc' => $voc->name)));
+        $blocks[$voc->vid]['cache'] = BLOCK_CACHE_GLOBAL;
+      }
     }
     $blocks[0]['info'] = t('Tags for the current post');
     $blocks[0]['cache'] = BLOCK_CACHE_PER_PAGE;
