Index: contrib/image_gallery/image_gallery.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/image/contrib/image_gallery/image_gallery.module,v
retrieving revision 1.31
diff -u -p -r1.31 image_gallery.module
--- contrib/image_gallery/image_gallery.module	17 Jan 2009 22:29:47 -0000	1.31
+++ contrib/image_gallery/image_gallery.module	9 Mar 2009 04:36:36 -0000
@@ -78,6 +78,12 @@ function image_gallery_admin_settings() 
     '#size' => 3,
     '#description' => t('Sets the number of images to be displayed in a gallery page.'),
   );
+  $form['gallery']['image_gallery_hide_empty_galleries'] = array(
+    '#type' => 'checkbox',
+    '#title' => t('Hide empty galleries'),
+    '#default_value' => variable_get('image_gallery_hide_empty_galleries', 0),
+    '#description' => t('When enabled, empty galleries will not be displayed.'),
+  ); 
   $form['gallery']['image_gallery_node_info'] = array(
     '#type' => 'checkbox',
     '#title' => t('Display node info'),
@@ -150,6 +156,12 @@ function image_gallery_page($type = NULL
   $galleries = taxonomy_get_tree($vid, $tid, -1, 1);
   for ($i=0; $i < count($galleries); $i++) {
     $galleries[$i]->count = taxonomy_term_count_nodes($galleries[$i]->tid, 'image');
+    // Hide empty galleries, if configured.
+    if (variable_get('image_gallery_hide_empty_galleries', 0) && !$galleries[$i]->count) {
+      unset($galleries[$i]);
+      continue;
+    }
+
     $tree = taxonomy_get_tree($vid, $galleries[$i]->tid, -1);
     $descendant_tids = array_merge(array($galleries[$i]->tid), array_map('_taxonomy_get_tid_from_term', $tree));
     // The values of $descendant_tids should be safe for raw inclusion in the
@@ -206,8 +218,7 @@ function image_gallery_page($type = NULL
     drupal_set_title($gallery->name);
   }
 
-  $content = theme('image_gallery', $galleries, $images);
-  return $content;
+  return theme('image_gallery', $galleries, $images);
 }
 
 function image_gallery_admin() {
