array( 'vid' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0), 'nid' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0), 'pub_id' => array('type' => 'int', 'not null' => TRUE, 'default' => 0), 'sync_date' => array('type' => 'int', 'not null' => FALSE, 'description' => 'UNIX integer sync date/time'), ), 'indexes' => array( 'pub_id' => array('pub_id') ), 'unique keys' => array( 'nid_vid' => array('nid', 'vid'), 'vid' => array('vid') ), 'primary key' => array('nid'), ); $schema['tripal_pub_import'] = array( 'fields' => array( 'pub_import_id' => array('type' => 'serial', 'not null' => TRUE), 'name' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE), 'criteria' => array('type' => 'text', 'size' => 'normal', 'not null' => TRUE, 'description' => 'Contains a serialized PHP array containing the search criteria'), 'disabled' => array('type' => 'int', 'unsigned' => TRUE, 'not NULL' => TRUE, 'default' => 0), 'do_contact' => array('type' => 'int', 'unsigned' => TRUE, 'not NULL' => TRUE, 'default' => 0), ), 'primary key' => array('pub_import_id'), 'indexes' => array( 'name' => array('name') ), ); return $schema; } /** * Implementation of hook_requirements(). */ function tripal_pub_requirements($phase) { $requirements = array(); if ($phase == 'install') { // make sure chado is installed if (!tripal_core_is_chado_installed()) { $requirements ['tripal_pub'] = array( 'title' => "tripal_pub", 'value' => "ERROR: Chado most be installed before this module can be enabled", 'severity' => REQUIREMENT_ERROR, ); } } return $requirements; } /* * */ function tripal_pub_add_custom_tables() { $schema = array ( 'table' => 'pubauthor_contact', 'fields' => array ( 'pubauthor_contact_id' => array ( 'type' => 'serial', 'not null' => true, ), 'contact_id' => array ( 'type' => 'int', 'not null' => true, ), 'pubauthor_id' => array ( 'type' => 'int', 'not null' => true, ), ), 'primary key' => array ( 0 => 'pubauthor_contact_id', ), 'unique keys' => array ( 'pubauthor_contact_c1' => array ( 0 => 'contact_id', 1 => 'pubauthor_id', ), ), 'foreign keys' => array ( 'contact' => array ( 'table' => 'contact', 'columns' => array ( 'contact_id' => 'contact_id', ), ), 'pubauthor' => array ( 'table' => 'pubauthor', 'columns' => array ( 'pubauthor_id' => 'pubauthor_id', ), ), ), ); tripal_core_create_custom_table($ret, 'pubauthor_contact', $schema, TRUE); }