--- bkmodule	2008-04-14 18:31:09.000000000 -0400
+++ user_suspend.module	2008-04-14 19:24:23.000000000 -0400
@@ -557,8 +557,24 @@
   $to_table = ($direction == 'users') ? 'users' : 'user_suspend_users';
   $from_table = ($direction == 'users') ? 'user_suspend_users' : 'users';
   $user_fields = user_fields();
+  //checking to see if the 'timezone_name' field, added by the date module, exists.
+  $dateapiflag = FALSE;
+  if (module_exists('date_api')) {
+  // installation of date api version 5.2 adds the field -- if the version is above this, then the module must be active
+  // however, if the module is disabled but not uninstalled, the field WILL still be active -- still this is an improvement
+  if ((variable_get('date_api_version', 0) > 5.19)) {
+    $dateapiflag = TRUE;
+  }
+  }
+if ($dateapiflag) {
+  db_query("ALTER TABLE {user_suspend_users} ADD timezone_name varchar(50) NOT NULL default ''");
+  $datatransform = db_query('INSERT INTO {'. $to_table . '} ('. implode(', ', $user_fields) .  ') SELECT * FROM {' . $from_table . '} WHERE uid = %d', $uid);
+  db_query("ALTER TABLE {user_suspend_users} DROP timezone_name");
+  return $datatransform;
+  } else {
   return db_query('INSERT INTO {'. $to_table . '} ('. implode(', ', $user_fields) .') SELECT * FROM {' . $from_table . '} WHERE uid = %d', $uid);
 }
+}
 
 function _user_suspend_move_roles($uid, $direction = 'roles') {
   if (!(int)$uid) return false;
