t('Forums'), 'multiple' => 0, 'required' => 1, 'hierarchy' => 1, 'relations' => 0, 'module' => 'forum', 'weight' => -10, 'nodes' => array('forum' => 1), ); taxonomy_save_vocabulary($vocabulary); variable_set('forum_nav_vocabulary', $vocabulary['vid']); } } /** * Implementation of hook_uninstall(). */ function forum_uninstall() { $vid = variable_get('forum_nav_vocabulary', ''); // Delete the vocabulary. taxonomy_del_vocabulary($vid); db_query("DELETE FROM {node} WHERE type = 'forum'"); db_query('DROP TABLE {forum}'); variable_del('forum_containers'); variable_del('forum_nav_vocabulary'); variable_del('forum_hot_topic'); variable_del('forum_per_page'); variable_del('forum_order'); variable_del('forum_block_num_0'); variable_del('forum_block_num_1'); } /** * Implementation of hook_schema(). */ function forum_schema() { $schema['forum'] = array( 'description' => t('Stores the relationship of nodes to forum terms.'), 'fields' => array( 'nid' => array( 'type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0, 'description' => t('The {node}.nid of the node.'), ), 'vid' => array( 'type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0, 'description' => t('Primary Key: The {node}.vid of the node.'), ), 'tid' => array( 'type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0, 'description' => t('The {term_data}.tid of the forum term assigned to the node.'), ), ), 'indexes' => array( 'nid' => array('nid'), 'tid' => array('tid') ), 'primary key' => array('vid'), ); return $schema; }