Index: remember_filter.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/remember_filter/remember_filter.module,v
retrieving revision 1.3
diff -u -p -r1.3 remember_filter.module
--- remember_filter.module	13 Jun 2006 22:50:30 -0000	1.3
+++ remember_filter.module	15 Nov 2006 14:06:48 -0000
@@ -11,14 +11,12 @@
 /**
  * Implementation of hook_help().
  */
-function remember_filter_help($section = '') {
-  $output = '';
+function remember_filter_help() {
   switch ($section) {
     case 'admin/modules#description':
-      $output = t("Remembers the last input filter used by a particular user");
+      return t("Remembers the last input filter used by a particular user");
       break;
   }
-  return $output;
 }
 
 /**
@@ -36,24 +34,59 @@ function remember_filter_nodeapi(&$node,
     case 'prepare':
       // Only operate on new nodes
       if (!isset($node->nid)) {
-	$last_format = db_result(db_query("SELECT format FROM {remember_filter} WHERE uid = '%d'", $user->uid));
-	if (isset($last_format)) {
-	  $node->format = $last_format;
-	}
+        $last_format = db_result(db_query("SELECT format FROM {remember_filter} WHERE uid = '%d'", $user->uid));
+        if (isset($last_format)) {
+          $node->format = $last_format;
+        }
       }
       break;
     case 'insert':
     case 'update':
       if (isset($node->format)) {
-	if (db_num_rows(db_query("SELECT format FROM {remember_filter} WHERE uid = '%d'", $user->uid))) {
-	  db_query("UPDATE {remember_filter} SET format = '%d' WHERE uid = '%d'", $node->format, $user->uid);
-	}
-	else {
-	  db_query("INSERT INTO {remember_filter} (uid, format) VALUES ('%d', '%d')", $user->uid, $node->format);
-	}
+        if (db_num_rows(db_query("SELECT format FROM {remember_filter} WHERE uid = '%d'", $user->uid))) {
+          db_query("UPDATE {remember_filter} SET format = '%d' WHERE uid = '%d'", $node->format, $user->uid);
+        }
+        else {
+          db_query("INSERT INTO {remember_filter} (uid, format) VALUES ('%d', '%d')", $user->uid, $node->format);
+        }
       }
       break;
   }
 }
 
-?>
\ No newline at end of file
+/**
+ * Implementation of hook_comment().
+ */
+function remember_filter_comment($item, $op) {
+  global $user;
+
+  // Don't proceed if there isn't a user
+  if (!$user->uid) {
+    return;
+  }
+
+  switch ($op) {
+    case 'form':
+      // Only operate on new comments
+      if (isset($item['_author'])) {
+        $last_format = db_result(db_query("SELECT format FROM {remember_filter} WHERE uid = '%d'", $user->uid));
+        if (isset($last_format)) {
+          $item['comment_filter']['format'] = filter_form($last_format);
+
+          return $item;
+        }
+      }
+      break;
+    case 'insert':
+    case 'update':
+      if (isset($item['format'])) {
+        if (db_num_rows(db_query("SELECT format FROM {remember_filter} WHERE uid = '%d'", $user->uid))) {
+          db_query("UPDATE {remember_filter} SET format = '%d' WHERE uid = '%d'", $item['format'], $user->uid);
+        }
+        else {
+          db_query("INSERT INTO {remember_filter} (uid, format) VALUES ('%d', '%d')", $user->uid, $item['format']);
+        }
+      }
+      break;
+  }
+}
