--- asset.install.orig	2008-01-29 21:49:46.000000000 +0100
+++ asset.install	2008-04-15 11:13:41.000000000 +0200
@@ -33,9 +33,35 @@
         status tinyint unsigned NOT NULL default '0',
         PRIMARY KEY  (aid,rid)
       ) TYPE=MyISAM /*!40100 DEFAULT CHARACTER SET utf8 */;");
+      break;
             
     case 'pgsql':
-      //TODO: postgresql 
+      db_query("CREATE TABLE {asset} (
+        aid integer NOT NULL,
+        type varchar(32) NOT NULL default '',
+        dirname varchar(128) NOT NULL default '',
+        extension varchar(128) NOT NULL default '',
+        filename varchar(255) NOT NULL default '',
+        filesize bigint NOT NULL default '0',
+        uid integer NOT NULL,
+        status smallint NOT NULL, 
+        author varchar(128) NOT NULL default '',
+        title varchar(128) NOT NULL default '',
+        description text NOT NULL,
+        PRIMARY KEY (aid)
+      )");
+      db_query("CREATE TABLE {asset_node} (
+        aid integer NOT NULL,
+        nid integer NOT NULL,
+        refs integer NOT NULL default '0',
+        PRIMARY KEY (aid,nid)
+      )");
+      db_query("CREATE TABLE {asset_role} (
+        aid integer NOT NULL,
+        rid integer NOT NULL,
+        status smallint NOT NULL default '0',
+        PRIMARY KEY (aid,rid)
+      )");
       break;
   }
   drupal_set_message(t('Asset tables have been configured.'));
@@ -45,11 +71,10 @@
   switch ($GLOBALS['db_type']) {
     case 'mysql':
     case 'mysqli':
+    case 'pgsql':
       $ret[] = update_sql("ALTER TABLE {asset} ADD COLUMN type varchar(32) NOT NULL default ''");
       $ret[] = update_sql("UPDATE {asset} SET type='local'");
       break;
-    case 'pgsql':
-      break;
   }
   return $ret; 
 }
@@ -58,9 +83,8 @@
   switch ($GLOBALS['db_type']) {
     case 'mysql':
     case 'mysqli':
-      $ret[] = update_sql("UPDATE {asset} SET dirname = TRIM('/' FROM REPLACE(dirname,'sites/default/files',''))");
-      break;
     case 'pgsql':
+      $ret[] = update_sql("UPDATE {asset} SET dirname = TRIM('/' FROM REPLACE(dirname,'sites/default/files',''))");
       break;
   }
   return $ret; 
@@ -79,6 +103,15 @@
         status tinyint unsigned NOT NULL default '0',
         PRIMARY KEY  (aid,rid)
       ) TYPE=MyISAM /*!40100 DEFAULT CHARACTER SET utf8 */;");
+      break;
+    case 'pgsql':
+      $ret[] = update_sql("CREATE TABLE {asset_role} (
+        aid integer NOT NULL,
+        rid integer NOT NULL,
+        status smallint NOT NULL default '0',
+        PRIMARY KEY  (aid,rid)
+      )");
+      break;
   }
   return $ret;
 }
