=== modified file 'sites/all/modules/translation_table/translation_table.module'
--- sites/all/modules/translation_table/translation_table.module	2009-02-09 13:57:49 +0000
+++ sites/all/modules/translation_table/translation_table.module	2009-02-09 13:59:17 +0000
@@ -6,15 +6,15 @@
  * @file
  * Translation table module
  *
- * UI for quick translation of taxonomies and menus. 
- * The i18n module allows for translation of taxonomy terms and menu items, 
+ * UI for quick translation of taxonomies and menus.
+ * The i18n module allows for translation of taxonomy terms and menu items,
  * but the process is tedious - you need to look up strings you want to
  * translate, there is no overview of what's already translated etc.
  *
  * This module presents your taxonomy terms or menu items in a table,
  * and each language has a corresponding column.
  * Just fill out the translations and click Save.
- * 
+ *
  * @author Zoltan Varady, 2008
  */
 
@@ -60,7 +60,7 @@
   $limit = 20;
   $header = _tt_get_header();
   $result = _tt_query_textgroup('menu', $header, $limit);
-  return translation_table_table($result);		
+  return translation_table_table($result);
 }
 
 /**
@@ -74,9 +74,9 @@
   $vid = $_REQUEST['vid'];
   if ($vid) {
     $result = _tt_query_vocabulary($vid, $header, $limit);
-  } 
+  }
   else {
-    $result = _tt_query_textgroup('taxonomy', $header, $limit);		
+    $result = _tt_query_textgroup('taxonomy', $header, $limit);
   }
 
   $output = drupal_get_form('_tt_filter_form');
@@ -163,9 +163,9 @@
  *   database result
  */
 function _tt_query_textgroup($type, $header, $limit) {
-  return pager_query("SELECT lid, source 
+  return pager_query("SELECT lid, source
     FROM {locales_source}
-WHERE textgroup = '%s'" . tablesort_sql($header),
+WHERE textgroup = '%s' AND source <> ''" . tablesort_sql($header),
   $limit, 0, NULL, $type);
 }
 
@@ -183,8 +183,8 @@
  */
 function _tt_query_vocabulary($vid, $header, $limit) {
   return pager_query("SELECT {locales_source}.lid, {locales_source}.source FROM {locales_source}
-    LEFT JOIN {i18n_strings} ON {locales_source}.lid = {i18n_strings}.lid 
-    WHERE type='term' AND objectid IN (SELECT tid FROM {term_data} WHERE vid=%d)" . tablesort_sql($header), $limit, 0, NULL, $vid);
+    LEFT JOIN {i18n_strings} ON {locales_source}.lid = {i18n_strings}.lid
+    WHERE type='term' AND source <> '' AND objectid IN (SELECT tid FROM {term_data} WHERE vid=%d)" . tablesort_sql($header), $limit, 0, NULL, $vid);
 }
 
 /**
@@ -203,7 +203,7 @@
   $row = array(array('data' => $source->source));
   foreach ($languages as $lang_code => $lang_name) {
     $translation = db_result(db_query("SELECT translation FROM {locales_target} WHERE lid = %d AND language = '%s'", $source->lid, $lang_code));
-    $row[] = array('data' => 
+    $row[] = array('data' =>
       '<input type="text" name="string['. $source->lid .']['. $lang_code .']" value="'. $translation .'" />');
   }
   return $row;
@@ -228,7 +228,7 @@
 function _tt_filter_form($form_state) {
   $vocab_objects = taxonomy_get_vocabularies();
   foreach ($vocab_objects as $vid => $vocabulary) {
-    $vocabs[$vid] = $vocabulary->name; 
+    $vocabs[$vid] = $vocabulary->name;
   }
 
   $form['vid']  = array(

