Index: signature_forum.install
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/signature_forum/signature_forum.install,v
retrieving revision 1.1.2.5.4.3
diff -u -p -r1.1.2.5.4.3 signature_forum.install
--- signature_forum.install	18 Nov 2008 19:49:33 -0000	1.1.2.5.4.3
+++ signature_forum.install	19 Jun 2009 16:31:10 -0000
@@ -25,6 +25,23 @@ function signature_forum_schema() {
     ),
     'primary key' => array('uid'),
   );
+  $schema['signature_comments'] = array(
+    'fields' => array(
+      'cid' => array(
+        'type' => 'int',
+        'unsigned' => TRUE,
+        'description' => 'The comment id from {comments}.cid',
+        'not null' => TRUE,
+        'disp-width' => '11'),
+      'status' => array(
+        'type' => 'int',
+        'description' => 'A boolean indicator for whether or not a signature should be displayed: 1 means display, 0 means not displayed.',
+        'size' => 'tiny',
+        'not null' => TRUE,
+        'disp-width' => '11'),
+    ),
+    'primary key' => array('cid'),
+  );
 
   return $schema;
 }
@@ -39,6 +56,25 @@ function signature_forum_install() {
     FROM {users}
     WHERE signature<>''");
   db_query("UPDATE {users} SET signature=''");
+  signature_forum_build_signature_status();
+}
+
+/**
+ * Set all existing comments to not have a comment to avoid duplicate comments
+ */
+function signature_forum_build_signature_status() {
+  // deal with nodecomments and standard nodes
+  if (module_exists('nodecomment')) {
+    db_query("INSERT INTO {signature_comments} (cid, status)
+      SELECT nid, 0
+      FROM {node}"); 
+  }
+  // deal with standard Drupal comments
+  else {
+    db_query("INSERT INTO {signature_comments} (cid, status)
+      SELECT cid, 0
+      FROM {comments}");
+  }
 }
 
 /**
