--- tablefield.install	2010-05-11 17:37:35.000000000 -0400
+++ tablefield.install	2010-11-21 17:27:48.000000000 -0500
@@ -1,36 +1,76 @@
 <?php
-// $Id: tablefield.install,v 1.2 2010/05/11 21:37:35 kevinhankens Exp $
+// $Id: tablefield.install,v 1.3 2010/11/21 22:27:48 kevinhankens Exp $
 
 /**
-* @file
-* Installation options for TableField
-*/
+ * @file
+ * Installation options for TableField
+ */
 
-/*
-* Implementation of hook_install().
-*/
+/**
+ * Implements of hook_install().
+ */
 function tablefield_install() {
 }
 
 /**
-* Implementation of hook_uninstall().
-*/
+ * Implements of hook_uninstall().
+ */
 function tablefield_uninstall() {
 }
 
 /**
-* Implementation of hook_enable().
-*
-* Notify content module when this module is enabled.
-*/
+ * Implements of hook_enable().
+ *
+ * Notify content module when this module is enabled.
+ */
 function tablefield_enable() {
 }
 
 /**
-* Implementation of hook_disable().
-*
-* Notify content module when this module is disabled.
-*/
+ * Implements of hook_disable().
+ *
+ * Notify content module when this module is disabled.
+ */
 function tablefield_disable() {
 }
-?>
+
+/**
+ * Implements hook_update_dependencies().
+ */
+function tablefield_update_dependencies() {
+  // Ensure that format columns are only changed after Filter module has changed
+  // the primary records.
+  $dependencies['text'][7000] = array(
+    'filter' => 7010,
+  );
+
+  return $dependencies;
+}
+
+/**
+ * Update schema to handle machine names of input filter formats.
+ */
+function tablefield_update_7000() {
+  $spec = array(
+    'type' => 'varchar',
+    'length' => 255,
+    'not null' => FALSE,
+  );
+  $fields = _update_7000_field_read_fields(array(
+    'module' => 'tablefield',
+    'storage_type' => 'field_sql_storage',
+  ));
+  foreach ($fields as $field_name => $field) {
+    if ($field['deleted']) {
+      $table = "field_deleted_data_{$field['id']}";
+      $revision_table = "field_deleted_revision_{$field['id']}";
+    }
+    else {
+      $table = "field_data_{$field['field_name']}";
+      $revision_table = "field_revision_{$field['field_name']}";
+    }
+    $column = $field['field_name'] . '_' . 'format';
+    db_change_field($table, $column, $column, $spec);
+    db_change_field($revision_table, $column, $column, $spec);
+  }
+}
