--- xtemplate.engine.orig	2005-10-06 20:39:15.000000000 +0200
+++ xtemplate.engine	2005-10-10 16:20:11.000000000 +0200
@@ -33,7 +33,8 @@
        'toggle_primary_links',
        'toggle_secondary_links',
        'toggle_node_user_picture',
-       'toggle_comment_user_picture');
+       'toggle_comment_user_picture',
+       'toggle_taxonomy_image');
 }
 
 function xtemplate_node($node, $main = 0, $page = 0) {
@@ -49,7 +50,8 @@
         "author"    => format_name($node),
         "date"      => format_date($node->created),
         "sticky"    => ($main && $node->sticky) ? 'sticky' : '',
-        "content"   => ($main && $node->teaser) ? $node->teaser : $node->body));
+        "content"   => $img_tag .
+	($main && $node->teaser) ? $node->teaser : $node->body));
 
   if ($page == 0) {
     $xtemplate->template->parse("node.title");
@@ -63,6 +65,17 @@
   if (module_exist("taxonomy") && ($taxonomy = taxonomy_link("taxonomy terms", $node))) {
     $xtemplate->template->assign("taxonomy", theme_links($taxonomy));
     $xtemplate->template->parse("node.taxonomy");
+    if (module_exist("taxonomy_image")) {
+      $images=array();
+      foreach (taxonomy_node_get_terms($node->nid) as $term) {
+        $images[] = taxonomy_image_display($term->tid, "alt='$term->name'");
+      }
+      $img_tag = implode('',$images);
+      if (strlen($img_tag)!=0) {
+	$xtemplate->template->assign("taxonomyimage", $img_tag);
+	$xtemplate->template->parse("node.taxonomyimage");
+      }
+    }
   }
 
   if ($node->links) {
