You are here

function uc_taxes_update_1 in Ubercart 5

File

uc_taxes/uc_taxes.install, line 38

Code

function uc_taxes_update_1() {
  $ret = array();
  switch ($GLOBALS['db_type']) {
    case 'mysql':
    case 'mysqli':
      $ret[] = update_sql("ALTER TABLE {uc_taxes} DROP INDEX taxes");
      $ret[] = update_sql("ALTER TABLE {uc_taxes} DROP pcid");
      $ret[] = update_sql("ALTER TABLE {uc_taxes} ADD COLUMN id mediumint(9) NOT NULL FIRST");
      $ret[] = update_sql("ALTER TABLE {uc_taxes} ADD PRIMARY KEY id (id)");
      $ret[] = update_sql("ALTER TABLE {uc_taxes} ADD COLUMN name varchar(255) NOT NULL AFTER id");
      $ret[] = update_sql("ALTER TABLE {uc_taxes} CHANGE COLUMN area area varchar(255) NOT NULL");
      $ret[] = update_sql("ALTER TABLE {uc_taxes} CHANGE COLUMN type type enum('code','zone','country') NOT NULL");
      $ret[] = update_sql("ALTER TABLE {uc_taxes} CHANGE COLUMN standalone cumulative tinyint(1) NOT NULL default '0'");
      $ret[] = update_sql("ALTER TABLE {uc_taxes} ADD COLUMN weight tinyint(2) NOT NULL default '0'");
      break;
    case 'pgsql':
      $ret[] = update_sql("ALTER TABLE {uc_taxes} DROP CONSTRAINT {uc_taxes}_pcid_area_key");
      $ret[] = update_sql("ALTER TABLE {uc_taxes} DROP pcid");
      db_add_column($ret, 'uc_taxes', 'id', 'integer', array(
        'not null' => true,
        'default' => 0,
      ));
      $ret[] = update_sql("ALTER TABLE {uc_taxes} ADD PRIMARY KEY (id)");
      $ret[] = update_sql("CREATE INDEX {uc_taxes}_id ON {uc_taxes} (id)");
      db_add_column($ret, 'uc_taxes', 'name', 'varchar(255)', array(
        'not null' => true,
        'default' => "''",
      ));
      db_change_column($ret, 'uc_taxes', 'area', 'area', 'varchar(255)', array(
        'not null' => true,
        'default' => "''",
      ));
      db_change_column($ret, 'uc_taxes', 'type', 'type', "enum('code','zone','country')", array(
        'not null' => true,
        'default' => 'code',
      ));
      db_change_column($ret, 'uc_taxes', 'standalone', 'cumulative', 'smallint', array(
        'not null' => true,
        'default' => 0,
      ));
      db_add_column($ret, 'uc_taxes', 'weight', 'smallint', array(
        'not null' => true,
        'default' => 0,
      ));
      break;
  }
  return $ret;
}