You are here

biblio_pm.install in Bibliography Module 6.2

Database table creation for biblio_pm module.

File

modules/pubmed/biblio_pm.install
View source
<?php

/**
 * @file
 * Database table creation for biblio_pm module.
 */

/**
 * Implementation of hook_install().
 */
function biblio_pm_install() {
  drupal_install_schema('biblio_pm');
}
function biblio_pm_uninstall() {
  drupal_uninstall_schema('biblio_pm');
  variable_del('biblio_pm_dup_action');
  variable_del('biblio_pm_auto_update');
  variable_del('biblio_pm_update_interval');
  variable_del('biblio_pm_update_limit');
  variable_del('biblio_pm_age_limit');
  variable_del('biblio_pm_update_next_execution');
}
function biblio_pm_enable() {
  biblio_pm_set_system_weight();
}
function biblio_pm_set_system_weight() {
  return update_sql("UPDATE {system} SET weight = 19 WHERE name = 'biblio_pm'");
}

/**
 * Implementation of hook_schema().
 *
 * Note:  Pro Drupal Development models use of t() to translate 'description'
 * for field definitions, but Drupal core does not use them.  We follow core.
 */
function biblio_pm_schema() {
  $schema = array();
  $schema['biblio_pubmed'] = array(
    'fields' => array(
      'biblio_pubmed_id' => array(
        'type' => 'int',
        'not null' => TRUE,
      ),
      'biblio_pmcid' => array(
        'type' => 'int',
        'not null' => TRUE,
        'default' => 0,
      ),
      'nid' => array(
        'type' => 'int',
        'not null' => TRUE,
      ),
      'biblio_pubmed_md5' => array(
        'type' => 'char',
        'length' => 32,
        'not null' => TRUE,
      ),
      'biblio_pm_changed' => array(
        'description' => 'The Unix timestamp when the pmid was most recently saved.',
        'type' => 'int',
        'not null' => TRUE,
        'default' => 0,
      ),
    ),
    'primary key' => array(
      'nid',
    ),
  );
  return $schema;
}
function biblio_pm_update_6001() {
  $result = array();
  $spec = array(
    'description' => 'The Unix timestamp when the pmid was most recently saved.',
    'type' => 'int',
    'not null' => TRUE,
    'default' => 0,
  );
  db_add_field($result, 'biblio_pubmed', 'biblio_pm_changed', $spec);
  $spec = array(
    'type' => 'int',
    'not null' => TRUE,
    'default' => 0,
  );
  db_add_field($result, 'biblio_pubmed', 'biblio_pmcid', $spec);
  return $result;
}