diff options
Diffstat (limited to 'modules/forum')
-rw-r--r-- | modules/forum/forum.install | 29 | ||||
-rw-r--r-- | modules/forum/forum.schema | 20 |
2 files changed, 25 insertions, 24 deletions
diff --git a/modules/forum/forum.install b/modules/forum/forum.install index 31ad02fa3..1c8d17b74 100644 --- a/modules/forum/forum.install +++ b/modules/forum/forum.install @@ -5,36 +5,17 @@ * Implementation of hook_install(). */ function forum_install() { - switch ($GLOBALS['db_type']) { - case 'mysql': - case 'mysqli': - db_query("CREATE TABLE {forum} ( - nid int unsigned NOT NULL default '0', - vid int unsigned NOT NULL default '0', - tid int unsigned NOT NULL default '0', - PRIMARY KEY (vid), - KEY nid (nid), - KEY tid (tid) - ) /*!40100 DEFAULT CHARACTER SET UTF8 */ "); - break; - case 'pgsql': - db_query("CREATE TABLE {forum} ( - nid int_unsigned NOT NULL default '0', - vid int_unsigned NOT NULL default '0', - tid int_unsigned NOT NULL default '0', - PRIMARY KEY (vid) - )"); - db_query("CREATE INDEX {forum}_nid_idx ON {forum} (nid)"); - db_query("CREATE INDEX {forum}_tid_idx ON {forum} (tid)"); - break; - } + // Create tables. + drupal_install_schema('forum'); } /** * Implementation of hook_uninstall(). */ function forum_uninstall() { - db_query('DROP TABLE {forum}'); + // Remove tables. + drupal_uninstall_schema('forum'); + db_query("DELETE FROM {node} WHERE type = 'forum'"); variable_del('forum_containers'); variable_del('forum_nav_vocabulary'); diff --git a/modules/forum/forum.schema b/modules/forum/forum.schema new file mode 100644 index 000000000..56a7d688f --- /dev/null +++ b/modules/forum/forum.schema @@ -0,0 +1,20 @@ +<?php +// $Id$ + +function forum_schema() { + $schema['forum'] = array( + 'fields' => array( + 'nid' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0), + 'vid' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0), + 'tid' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0) + ), + 'indexes' => array( + 'nid' => array('nid'), + 'tid' => array('tid') + ), + 'primary key' => array('vid'), + ); + + return $schema; +} + |