--- modules/lineage/lineage.module_original	Sat Feb 11 19:28:32 2006
+++ modules/lineage/lineage.module	Tue Nov 07 18:58:42 2006
@@ -120,6 +120,11 @@
       ), 
     ),
     "fields" => array(
+      "lineage" => array(
+      	'name' => "Lineage: Taxonomy Hierarchy",
+        'sortable' => true,
+        'handler' => 'lineage_view_handler',
+      ),
       "depth" => array(
         'name' => "Lineage: Depth", 
         'sortable' => false
@@ -131,6 +136,20 @@
   );
   
   return $tables;
+}
+
+function lineage_view_handler($field, $field_details, $content, $content_details) {
+	// split lineage string into pieces, i.e. hierarchial path (getting rid of weight numbers, too)
+	$path = split("\n[0-9]+", "\n".$content);
+	$s = '';
+	// compose the path in readable form
+	foreach ($path as $a) {
+		if ($s != '') $s .= '  /  ';
+		$s .= str_replace("\n", '', $a);
+	}
+	// output pseudo-link (without href) with hierarchically indented term and full path via title/alt-rollover  
+	return str_repeat('&nbsp;&nbsp;&nbsp;', substr_count($content, "\n")-1)
+				 . '<a title="' . $s . '" alt="' . $s . '">' . $a . '</a>';
 }
 
 function lineage_update_1() {
