--- subscriptions.module.ori21	2007-01-16 03:18:59.000000000 +0100
+++ subscriptions.module	2007-01-16 04:15:35.000000000 +0100
@@ -351,7 +351,7 @@ function subscriptions_sendmail($name, $
 /*
  * Get e-mail vars
  */
-function subscriptions_mailvars($sid, $ssid, $uid, $stype, $strsent) {
+function subscriptions_mailvars($sid, $ssid, $uid, $stype, $strsent, $cid = NULL) {
   global $base_url;
   global $locale;
   $initial_locale = $locale;
@@ -367,7 +367,7 @@ function subscriptions_mailvars($sid, $s
     $result = db_query('SELECT u.uid, u.name, u.mail, u.language FROM {users} u INNER JOIN {subscriptions} s ON u.uid = s.uid WHERE u.status= 1 AND s.sid = %d AND s.stype = \'node\'', $sid);
     $strtype = 'thread';
     $nid = $sid;
-    $cid = "comment-$ssid";
+    $cid = $ssid;
     $page = subscriptions_comment_page($ssid, $nid);
     if ($page) {
       $page = "&page=$page";
@@ -379,7 +379,6 @@ function subscriptions_mailvars($sid, $s
     $result = db_query('SELECT u.mail, u.name, u.uid, u.language FROM {users} u INNER JOIN {subscriptions} s ON u.uid = s.uid WHERE u.status= 1 AND s.stype =\''.$typestr.'\'');
     $strtype = 'content type';
     $nid = $ssid;
-    $cid = NULL;
   }
   // if node insert, test if node has a taxonomy else skip
   if ($stype == 'taxa' && !is_null($sid)) {
@@ -388,7 +387,6 @@ function subscriptions_mailvars($sid, $s
     $result = db_query('SELECT u.mail, u.name, u.uid, u.language FROM {users} u INNER JOIN {subscriptions} s ON u.uid = s.uid WHERE u.status= 1 AND s.sid = %d AND stype = \'taxa\'', $sid);
     $strtype = 'category';
     $nid = $ssid;
-    $cid = NULL;
   }
   // if blog insert, get vars
   if ($stype == 'blog') {
@@ -397,7 +395,6 @@ function subscriptions_mailvars($sid, $s
     $result = db_query('SELECT u.uid, u.name, u.mail, u.language FROM {users} u INNER JOIN {subscriptions} s ON u.uid = s.uid WHERE u.status= 1 AND s.sid = %d AND s.stype = \'blog\'', $sid);
     $strtype = 'blog';
     $nid = $ssid;
-    $cid = NULL;
   }
   $nobj = node_load($nid);
   // loop through subscribers and call mail function
@@ -416,7 +413,7 @@ function subscriptions_mailvars($sid, $s
     // set teaser variable
     if($subuser->subscriptions_teaser){
       // and set send filter appropriately
-      $teaser = $nobj->teaser;
+      $teaser = (is_null($cid) ? $nobj->teaser : db_result(db_query('SELECT comment FROM {comments} WHERE cid = ' . $cid)));
     }else{
       $teaser = '';
     }
@@ -432,10 +429,10 @@ function subscriptions_mailvars($sid, $s
       $body = t("Greetings, !name.\n\nA !type to which you have subscribed has been updated.\n!title\n!teaser\nTo view the thread, navigate to !url \n\n--\nThis is an automatic message from !site.\nTo manage your subscriptions, browse to !manage-url",
       array('!name' => $subscriptions->name,
             '!type' => t($strtype),
-            '!url' => url('node/'. $nid, $page? $page: null, $cid, 1),
+            '!url' => url('node/'. $nid, $page? $page: null, (is_null($cid) ? NULL : "comment-$cid"), 1),
             '!site' => t(variable_get('site_name', 'drupal')),
             '!manage-url' => ( variable_get('subscriptions_usersmenu', 0) ? url("user/$uid/subscriptions", NULL, NULL, 1) : url('subscriptions', NULL, NULL, 1) ),
-            '!title' => $nobj->title, 
+            '!title' => (is_null($cid) ? $nobj->title : $nobj->title . "\n\n" . db_result(db_query('SELECT subject FROM {comments} WHERE cid = ' . $cid)) ),
             '!teaser'=> $teaser)
             );
       // revert to original locale
@@ -603,11 +600,11 @@ function subscriptions_comment($comment,
       // send to taxonomy subscribers
       if (!empty($taxa)) {
           foreach ($taxa as $tid){
-            $strsent = $strsent . subscriptions_mailvars($tid, $nid, $user->uid, 'taxa', $strsent);
+            $strsent = $strsent . subscriptions_mailvars($tid, $nid, $user->uid, 'taxa', $strsent, $cid);
           }
       }
       // send content type subscriptions
-      $strsent = $strsent . subscriptions_mailvars($nobj->type, $nobj->nid, $user->uid, 'type', $strsent);
+      $strsent = $strsent . subscriptions_mailvars($nobj->type, $nobj->nid, $user->uid, 'type', $strsent, $cid);
     } // end cron test
     subscriptions_autosubscribe($user->uid, $nid);
   }
