This commit was generated by cvs2svn to compensate for changes in r11022,
[freeside.git] / FS / bin / freeside-upgrade
index d3723a1..e11a0a7 100755 (executable)
@@ -71,6 +71,34 @@ if ( dbdef->table('cgp_rule_condition') &&
 
 }
 
+if ( dbdef->table('areacode') and
+     dbdef->table('areacode')->primary_key eq 'code' )
+{
+  if ( driver_name =~ /^mysql/i ) {
+    push @bugfix, 
+      'ALTER TABLE areacode DROP PRIMARY KEY',
+      'ALTER TABLE areacode ADD COLUMN (areanum int auto_increment primary key)';
+  }
+  else {
+    push @bugfix, 'ALTER TABLE areacode DROP CONSTRAINT areacode_pkey';
+  }
+}
+
+# RT required field flag
+# for consistency with RT schema: mysql is in CamelCase,
+# pg is in lowercase, and they use different data types.
+my ($t, $creq, $cdis) = 
+  map { driver_name =~ /^mysql/i ? $_ : lc($_) }
+  ('CustomFields','Required','Disabled');
+
+if ( dbdef->table($t) && 
+     ! dbdef->table($t)->column($creq) ) {
+  push @bugfix,
+    "ALTER TABLE $t ADD COLUMN $creq ".
+    dbdef->table($t)->column($cdis)->type .
+    ' NOT NULL DEFAULT 0';
+}
+
 if ( $DRY_RUN ) {
   print
     join(";\n", @bugfix ). ";\n";