--- ip2cc.install	2007-10-26 00:39:30.000000000 +0800
+++ /opt/www/drupal-5.2.int.thatsbj.com/sites/all/modules/ip2cc/ip2cc.install	2008-06-17 13:49:34.000000000 +0800
@@ -1,6 +1,9 @@
 <?php
 // $Id: ip2cc.install,v 1.1.2.8 2007/10/25 16:39:30 sugree Exp $
 
+/**
+ * Implementation of hook_install().
+ */
 function ip2cc_install() {
   switch ($GLOBALS['db_type']) {
     case 'mysql':
@@ -32,26 +35,53 @@ function ip2cc_install() {
                 PRIMARY KEY (nid)
               ) TYPE=MyISAM
               /*!40100 DEFAULT CHARACTER SET utf8 */ ;");
+      break;
+    case 'pgsql':
+      db_query("CREATE TABLE {iso3166} (
+                country_code2 char(2) NOT NULL,
+                country_code3 char(3) NOT NULL,
+                country_name varchar(80) NOT NULL,
+                country_number smallint NOT NULL default '0',
+                PRIMARY KEY (country_code2)
+              )");
+      db_query("CREATE INDEX {iso3166}_country_code3_idx ON {iso3166} (country_code3)");
+      db_query("CREATE INDEX {iso3166}_country_name_idx ON {iso3166} (country_name)");
+
+      db_query("CREATE TABLE {ip2cc} (
+                ip_from double precision NOT NULL default '0',
+                ip_to double precision NOT NULL default '0',
+                country_code char(2) NOT NULL default '',
+                net_name char(128)  NOT NULL default '',
+                as_number int NOT NULL default '0',
+                PRIMARY KEY (ip_from, ip_to)
+              )");
 
-      ip2cc_batch_insert('iso3166.mysql');
+      db_query("CREATE TABLE {ip2cc_node} (
+                nid int_unsigned NOT NULL default '0',
+                hostname varchar(128) default NULL,
+                PRIMARY KEY (nid)
+              )");
+      break;
+  }
+
+  ip2cc_batch_insert('iso3166.sql');
       if (!ini_get('safe_mode')) {
         set_time_limit(0);
-        ip2cc_batch_insert('ipdb.mysql');
+    ip2cc_batch_insert('ipdb.sql');
       }
       else {
         drupal_set_message(t('Since you are in safe_mode, please manually import IP database by small range at <a href="admin/settings/ip2cc/update">update</a> page to prevent execution timeout issue.'));
       }
-
-      break;
-  }
 }
 
-/*
+/**
+ * Implementation of hook_uninstall().
+ */
 function ip2cc_uninstall() {
   db_query("DROP TABLE {iso3166}");
+  db_query("DROP TABLE {ip2cc}");
   db_query("DROP TABLE {ip2cc_node}");
 }
-*/
 
 function ip2cc_batch_insert($filename) {
   if ($fd = fopen(drupal_get_path('module','ip2cc').'/'.$filename, 'r')) {
