array( 'nid' => array( 'type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, ), 'loader_name' => array( 'type' => 'varchar', ), 'template_id' => array( 'type' => 'varchar', ), 'file' => array( 'type' => 'varchar', 'not null' => TRUE ), 'job_id' => array( 'type' => 'int', ), 'job_status' => array( 'type' => 'varchar', ), 'file_has_header' => array( 'type' => 'int', 'size' => 'tiny', 'not null' => TRUE, 'default' => 0, ), 'keep_track_inserted' => array( 'type' => 'int', 'size' => 'tiny', 'not null' => TRUE, 'default' => 1 ), ), 'primary key' => array('nid'), 'unique keys' => array( 'name' => array('loader_name') ), ); $schema['tripal_bulk_loader_template'] = array( 'fields' => array( 'template_id' => array( 'type' => 'serial', 'unsigned' => TRUE, 'not null' => TRUE, ), 'name' => array( 'type' => 'varchar', ), 'template_array' => array( 'type' => 'varchar', ) ), 'primary key' => array('template_id'), 'unique keys' => array( 'name' => array('name') ), ); $schema['tripal_bulk_loader_inserted'] = array( 'fields' => array( 'tripal_bulk_loader_inserted_id' => array( 'type' => 'serial', 'not null' => TRUE ), 'nid' => array( 'type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, ), 'table_inserted_into' => array( 'type' => 'varchar', 'not null' => TRUE, ), 'table_primary_key' => array( 'type' => 'varchar', 'not null' => TRUE, ), 'ids_inserted' => array( 'type' => 'text', 'not null' => TRUE ), ), 'primary key' => array('tripal_bulk_loader_inserted_id'), ); $schema['tripal_bulk_loader_constants'] = array( 'fields' => array( 'constant_id' => array( 'type' => 'serial', 'not null' => TRUE ), 'nid' => array( 'type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, ), 'group_id' => array( 'type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0 ), 'chado_table' => array( 'type' => 'varchar', 'not null' => TRUE, ), 'chado_field' => array( 'type' => 'varchar', 'not null' => TRUE, ), 'record_id' => array( 'type' => 'int', 'not null' => TRUE ), 'field_id' => array( 'type' => 'int', 'not null' => TRUE ), 'value' => array( 'type' => 'text', ), ), 'primary key' => array('constant_id'), ); return $schema; } /** * Update schema for version 6.x-0.3.1b-1.5 * - Add the tripal_bulk_loader_constants table */ function tripal_bulk_loader_update_6150() { // Create tripal_bulk_loader_constants table $schema = tripal_bulk_loader_schema(); $ret = array(); db_create_table($ret, 'tripal_bulk_loader_constants', $schema['tripal_bulk_loader_constants']); return $ret; } /** * Update schema for version 6.x-0.3.1b-1.5 * - Add the tripal_bulk_loader_constants.group_id column * to allow multiple sets of constants per job */ function tripal_bulk_loader_update_6151() { $ret = array(); $schema = tripal_bulk_loader_schema(); db_add_field( $ret, 'tripal_bulk_loader_constants', 'group_id', array( 'type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0 ) ); return $ret; } function tripal_bulk_loader_update_6152() { $ret = array(); db_add_field( $ret, 'tripal_bulk_loader', 'keep_track_inserted', array( 'type' => 'int', 'size' => 'tiny', 'not null' => TRUE, 'default' => 1 ) ); return $ret; } /** * Implementation of hook_requirements(). */ function tripal_bulk_loader_requirements($phase) { $requirements = array(); if ($phase == 'install') { // make sure chado is installed if (!tripal_core_is_chado_installed()) { $requirements ['tripal_bulk_loader'] = array( 'title' => "tripal_bulk_loader", 'value' => "ERROR: Chado most be installed before this module can be enabled", 'severity' => REQUIREMENT_ERROR, ); } } return $requirements; }