--- trackback.module.orig	2007-04-10 22:22:10.000000000 +0200
+++ trackback.module	2007-04-10 22:53:51.000000000 +0200
@@ -260,7 +260,7 @@
         }
         return $values_array;
 
-      case 'alter':
+      case 'view':
         if ($node->can_receive) {
           $url = url('node/'. $node->nid, NULL, NULL, TRUE);
           $tb_url = url('trackback/'. $node->nid, NULL, NULL, TRUE);
@@ -272,18 +272,23 @@
         }
         if (!(($_POST['op'] == t('Preview') || ($_POST['op'] == t('Submit') && form_get_errors())))) {
           if ($teaser && $node->can_receive) {
-            $node->teaser = $node->teaser . $autodetect_comments ."\n";
+            $node->content['trackback'] = array(
+                '#value' => $autodetect_comments . "\n",
+                '#weight' => 12,
+              );
           }
           else {
             if ($node->can_receive) {
-              $node->body .= $autodetect_comments ."\n";
-              $node->body .= theme('box', t('Trackback URL for this post:'), url('trackback/'. $node->nid, NULL, NULL, TRUE));
+              $node->content['trackback'] = array(
+                '#value' => $autodetect_comments . "\n" . theme('box', t('Trackback URL for this post:'), url('trackback/'. $node->nid, NULL, NULL, TRUE)),
+                '#weight' => 12,
+              );
             }
             if ($node->can_receive && count($node->trackbacks_received)) {
               foreach ($node->trackbacks_received as $tr) {
                 $trackbacks .= theme('trackback', $tr);
               }
-              $node->body .= theme('trackbacks', $trackbacks);
+              $node->content['trackback']['#value'] .= theme('trackbacks', $trackbacks);
             }
           }
         }
