? test.patch
? archive/_________station_archive.install
? archive/____station_archive.module
? catalog/The Database.mdb
? catalog/fixit.php
? catalog/import.php
Index: program/station_program.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/station/program/station_program.module,v
retrieving revision 1.11
diff -u -p -u -p -r1.11 station_program.module
--- program/station_program.module	27 Nov 2007 16:01:44 -0000	1.11
+++ program/station_program.module	30 Nov 2007 01:22:57 -0000
@@ -206,9 +206,30 @@ function station_program_delete($node) {
  * Implementation of hook_update().
  */
 function station_program_update($node) {
-  db_query("UPDATE {station_program} SET genre = '%s', url = '%s' WHERE vid = %d", $node->genre, $node->url, $node->vid);
+  if ($node->revision){
+    db_query("INSERT INTO {station_program} (nid, vid, genre, url) VALUES (%d, %d, '%s', '%s')", $node->nid, $node->vid, $node->genre, $node->url);
+  }
+  else {
+    db_query("UPDATE {station_program} SET genre = '%s', url = '%s' WHERE vid = %d", $node->genre, $node->url, $node->vid);
+  }
+}
+
+/**
+ * Implementation of hook_nodeapi().
+ *
+ * Use this to handle deletion of revisions.
+ */
+function station_program_nodeapi(&$node, $op, $arg) {
+  if ($node->type == 'station_program') {
+    switch ($op) {
+      case 'delete revision':
+        db_query('DELETE FROM {station_program} WHERE vid = %d', $node->vid);
+        break;
+    }
+  }
 }
 
+
 /**
  * Implementation of hook_view().
  */
