|
@@ -123,6 +123,197 @@ function tripal_chado_tripal_cv_defaults_schema() {
|
|
|
*
|
|
|
*/
|
|
|
function tripal_chado_enable() {
|
|
|
+ // If Tripal v2 is already installed, then when the module is first enabled
|
|
|
+ // after an upgade, the installation of this module will try and recreate
|
|
|
+ // some of the tables created with tripal_core and the installation will fail.
|
|
|
+ // Therefore, the tables were temporarily moved out of the way to preserve
|
|
|
+ // the data. Now we'll move them back.
|
|
|
+ tripal_chado_upgrade_v2_v3_enable();
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+ * Implements hook_schema().
|
|
|
+ */
|
|
|
+function tripal_chado_schema() {
|
|
|
+
|
|
|
+ // If Tripal v2 is already installed, then when the module is first enabled
|
|
|
+ // after an upgade, the installation of this module will try and recreate
|
|
|
+ // some of the tables created with tripal_core and the installation will fail.
|
|
|
+ // Therefore, we need to temporarily move those tables out of the way, let
|
|
|
+ // the module install and then move them back.
|
|
|
+ $migrated = variable_get('tripal_v2_upgrade_v3_check_chado', FALSE);
|
|
|
+ if (!$migrated) {
|
|
|
+ try {
|
|
|
+ tripal_chado_upgrade_v2_v3_pre_enable();
|
|
|
+ variable_set('tripal_v2_upgrade_v3_check_chado', TRUE);
|
|
|
+ }
|
|
|
+ catch(Exception $e) {
|
|
|
+ watchdog_exception('tripal_chado', $e);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ // Links TripalEntity entities to the chado record.
|
|
|
+ $schema['chado_entity'] = tripal_chado_chado_entity_schema();
|
|
|
+ $schema['tripal_mviews'] = tripal_chado_tripal_mviews_schema();
|
|
|
+ $schema['tripal_custom_tables'] = tripal_chado_tripal_custom_tables_schema();
|
|
|
+
|
|
|
+ $schema['tripal_cv_obo'] = tripal_chado_tripal_cv_obo_schema();
|
|
|
+ $schema['tripal_cv_defaults'] = tripal_chado_tripal_cv_defaults_schema();
|
|
|
+ $schema['tripal_pub_import'] = tripal_chado_tripal_pub_import_schema();
|
|
|
+
|
|
|
+ // if this module is already installed and enabled, then we want to provide
|
|
|
+ // the schemas for all of the custom tables. This will allow Views to
|
|
|
+ // see the schemas. We check if the module is installed because during
|
|
|
+ // installation we don't want to make these custom tables available as we don't
|
|
|
+ // want them created in the Drupal database. The custom tables go in the
|
|
|
+ // Chado database.
|
|
|
+ if (db_table_exists('tripal_custom_tables')) {
|
|
|
+ $sql = 'SELECT * FROM {tripal_custom_tables}';
|
|
|
+ $results = db_query($sql);
|
|
|
+ foreach ($results as $custom) {
|
|
|
+ $schema[$custom->table_name] = unserialize($custom->schema);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ return $schema;
|
|
|
+}
|
|
|
+
|
|
|
+
|
|
|
+/**
|
|
|
+ * This function should be executed only one time during upgrade of v2 to v3.
|
|
|
+ */
|
|
|
+function tripal_chado_upgrade_v2_v3_pre_enable() {
|
|
|
+ // If Tripal v2 is already installed, then when the module is first enabled
|
|
|
+ // after an upgade, the installation of this module will try and recreate
|
|
|
+ // some of the tables created with tripal_core and the installation will fail.
|
|
|
+ // Therefore, we need to temporarily move those tables out of the way, let
|
|
|
+ // the module install and then move them back.
|
|
|
+
|
|
|
+ if (db_table_exists('tripal_mviews')) {
|
|
|
+ // Move the tripal_mviews table out of the way.
|
|
|
+ $sql = "ALTER TABLE tripal_mviews RENAME TO tripal_mviews2";
|
|
|
+ db_query($sql);
|
|
|
+ if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_mviews_mv_name_key'")->fetchField()) {
|
|
|
+ $sql = "ALTER INDEX tripal_mviews_mv_name_key RENAME TO tripal_mviews_mv_name_key2";
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ $sql = "CREATE UNIQUE INDEX tripal_mviews_mv_name_key2 ON tripal_mviews2 USING btree (name)";
|
|
|
+ }
|
|
|
+ db_query($sql);
|
|
|
+ if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_mviews_mv_table_key'")->fetchField()) {
|
|
|
+ $sql = "ALTER INDEX tripal_mviews_mv_table_key RENAME TO tripal_mviews_mv_table_key2";
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ $sql = "CREATE UNIQUE INDEX tripal_mviews_mv_table_key2 ON tripal_mviews2 USING btree (mv_table)";
|
|
|
+ }
|
|
|
+ db_query($sql);
|
|
|
+ if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_mviews_mview_id_idx'")->fetchField()) {
|
|
|
+ $sql = "ALTER INDEX tripal_mviews_mview_id_idx RENAME TO tripal_mviews_mview_id_idx2";
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ $sql = "CREATE INDEX tripal_mviews_mview_id_idx2 ON tripal_mviews2 USING btree (mview_id)";
|
|
|
+ }
|
|
|
+ db_query($sql);
|
|
|
+ if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_mviews_pkey'")->fetchField()) {
|
|
|
+ $sql = "ALTER INDEX tripal_mviews_pkey RENAME TO tripal_mviews_pkey2";
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ $sql = "CREATE UNIQUE INDEX tripal_mviews_pkey2 ON tripal_mviews2 USING btree (mview_id)";
|
|
|
+ }
|
|
|
+ db_query($sql);
|
|
|
+ }
|
|
|
+
|
|
|
+ if (db_table_exists('tripal_custom_tables')) {
|
|
|
+ // Move the tripal_custom_tables table out of the way.
|
|
|
+ $sql = "ALTER TABLE tripal_custom_tables RENAME TO tripal_custom_tables2";
|
|
|
+ db_query($sql);
|
|
|
+ if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_custom_tables_pkey'")->fetchField()) {
|
|
|
+ $sql = "ALTER INDEX tripal_custom_tables_pkey RENAME TO tripal_custom_tables_pkey2";
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ $sql = "CREATE UNIQUE INDEX tripal_custom_tables_pkey2 ON tripal_custom_tables2 USING btree (table_id)";
|
|
|
+ }
|
|
|
+ db_query($sql);
|
|
|
+ if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_custom_tables_table_id_idx'")->fetchField()) {
|
|
|
+ $sql = "ALTER INDEX tripal_custom_tables_table_id_idx RENAME TO tripal_custom_tables_table_id_idx2";
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ $sql = "CREATE INDEX tripal_custom_tables_table_id_idx2 ON tripal_custom_tables2 USING btree (table_id)";
|
|
|
+ }
|
|
|
+ db_query($sql);
|
|
|
+ }
|
|
|
+
|
|
|
+ if (db_table_exists('tripal_cv_obo')) {
|
|
|
+ // Move the tripal_cv_obo table out of the way.
|
|
|
+ $sql = "ALTER TABLE tripal_cv_obo RENAME TO tripal_cv_obo2";
|
|
|
+ db_query($sql);
|
|
|
+ if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_cv_obo_obo_id_idx'")->fetchField()) {
|
|
|
+ $sql = "ALTER INDEX tripal_cv_obo_obo_id_idx RENAME TO tripal_cv_obo_obo_id_idx2";
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ $sql = "CREATE INDEX tripal_cv_obo_obo_id_idx2 ON tripal_cv_obo2 USING btree (obo_id)";
|
|
|
+ }
|
|
|
+ db_query($sql);
|
|
|
+ if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_cv_obo_pkey'")->fetchField()) {
|
|
|
+ $sql = "ALTER INDEX tripal_cv_obo_pkey RENAME TO tripal_cv_obo_pkey2";
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ $sql = "CREATE UNIQUE INDEX tripal_cv_obo_pkey2 ON tripal_cv_obo2 USING btree (obo_id)";
|
|
|
+ }
|
|
|
+ db_query($sql);
|
|
|
+ }
|
|
|
+
|
|
|
+ if (db_table_exists('tripal_cv_defaults')) {
|
|
|
+ // Move the tripal_cv_defaults table out of the way.
|
|
|
+ $sql = "ALTER TABLE tripal_cv_defaults RENAME TO tripal_cv_defaults2";
|
|
|
+ db_query($sql);
|
|
|
+ if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_cv_defaults_pkey'")->fetchField()) {
|
|
|
+ $sql = "ALTER INDEX tripal_cv_defaults_pkey RENAME TO tripal_cv_defaults_pkey2";
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ $sql = "CREATE UNIQUE INDEX tripal_cv_defaults_pkey2 ON tripal_cv_defaults2 USING btree (cv_default_id)";
|
|
|
+ }
|
|
|
+ db_query($sql);
|
|
|
+ if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_cv_defaults_tripal_cv_defaults_idx1_idx'")->fetchField()) {
|
|
|
+ $sql = "ALTER INDEX tripal_cv_defaults_tripal_cv_defaults_idx1_idx RENAME TO tripal_cv_defaults_tripal_cv_defaults_idx1_idx2";
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ $sql = "CREATE INDEX tripal_cv_defaults_tripal_cv_defaults_idx1_idx2 ON tripal_cv_defaults2 USING btree (table_name, field_name)";
|
|
|
+ }
|
|
|
+ db_query($sql);
|
|
|
+ if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_cv_defaults_tripal_cv_defaults_unq1_key'")->fetchField()) {
|
|
|
+ $sql = "ALTER INDEX tripal_cv_defaults_tripal_cv_defaults_unq1_key RENAME TO tripal_cv_defaults_tripal_cv_defaults_unq1_key2";
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ $sql = "CREATE UNIQUE INDEX tripal_cv_defaults_tripal_cv_defaults_unq1_key2 ON tripal_cv_defaults2 USING btree (table_name, field_name, cv_id)";
|
|
|
+ }
|
|
|
+ db_query($sql);
|
|
|
+ }
|
|
|
+
|
|
|
+ if (db_table_exists('tripal_pub_import')) {
|
|
|
+ // Move the tripal_pub_import table out of the way.
|
|
|
+ $sql = "ALTER TABLE tripal_pub_import RENAME TO tripal_pub_import2";
|
|
|
+ db_query($sql);
|
|
|
+ if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_pub_import_name_idx'")->fetchField()) {
|
|
|
+ $sql = "ALTER INDEX tripal_pub_import_name_idx RENAME TO tripal_pub_import_name_idx2";
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ $sql = "CREATE INDEX tripal_pub_import_name_idx2 ON tripal_pub_import2 USING btree (name)";
|
|
|
+ }
|
|
|
+ db_query($sql);
|
|
|
+ if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_pub_import_pkey'")->fetchField()) {
|
|
|
+ $sql = "ALTER INDEX tripal_pub_import_pkey RENAME TO tripal_pub_import_pkey2";
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ $sql = "CREATE UNIQUE INDEX tripal_pub_import_pkey2 ON tripal_pub_import2 USING btree (pub_import_id)";
|
|
|
+ }
|
|
|
+ db_query($sql);
|
|
|
+ }
|
|
|
+}
|
|
|
+/**
|
|
|
+ * This function should be executed only one time during upgrade of v2 to v3.
|
|
|
+ */
|
|
|
+function tripal_chado_upgrade_v2_v3_enable() {
|
|
|
// If Tripal v2 is already installed, the installation of this module
|
|
|
// will try and recreate some of the tables created with tripal_core and the
|
|
|
// installation will fail. Therefore, in the install we renamed it. Now
|
|
@@ -143,7 +334,7 @@ function tripal_chado_enable() {
|
|
|
db_query($sql);
|
|
|
}
|
|
|
|
|
|
- // tripal_custom_tables
|
|
|
+ // tripal_custom_tables
|
|
|
if (db_table_exists('tripal_custom_tables2')) {
|
|
|
$sql = "DROP TABLE tripal_custom_tables";
|
|
|
db_query($sql);
|
|
@@ -155,7 +346,7 @@ function tripal_chado_enable() {
|
|
|
db_query($sql);
|
|
|
}
|
|
|
|
|
|
- // tripal_cv_obo
|
|
|
+ // tripal_cv_obo
|
|
|
if (db_table_exists('tripal_cv_obo2')) {
|
|
|
$sql = "DROP TABLE tripal_cv_obo";
|
|
|
db_query($sql);
|
|
@@ -167,7 +358,7 @@ function tripal_chado_enable() {
|
|
|
db_query($sql);
|
|
|
}
|
|
|
|
|
|
- // tripal_cv_defaults
|
|
|
+ // tripal_cv_defaults
|
|
|
if (db_table_exists('tripal_cv_defaults2')) {
|
|
|
$sql = "DROP TABLE tripal_cv_defaults";
|
|
|
db_query($sql);
|
|
@@ -181,7 +372,7 @@ function tripal_chado_enable() {
|
|
|
db_query($sql);
|
|
|
}
|
|
|
|
|
|
- // tripal_pub_import
|
|
|
+ // tripal_pub_import
|
|
|
if (db_table_exists('tripal_pub_import2')) {
|
|
|
$sql = "DROP TABLE tripal_pub_import";
|
|
|
db_query($sql);
|
|
@@ -193,167 +384,6 @@ function tripal_chado_enable() {
|
|
|
db_query($sql);
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
-/**
|
|
|
- * Implements hook_schema().
|
|
|
- */
|
|
|
-function tripal_chado_schema() {
|
|
|
-
|
|
|
- // If Tripal v2 is already installed, the installation of this module
|
|
|
- // will try and recreate some of the tables created with tripal_core and the
|
|
|
- // installation will fail. Therefore, we need to temporarily move those
|
|
|
- // tables out of the way, let the module install and then move them back.
|
|
|
- $migrated = variable_get ('tripal_v2_upgrade_v3_check_chado', FALSE);
|
|
|
- if (!$migrated) {
|
|
|
- if (db_table_exists('tripal_mviews')) {
|
|
|
- // Move the tripal_mviews table out of the way.
|
|
|
- $sql = "ALTER TABLE tripal_mviews RENAME TO tripal_mviews2";
|
|
|
- db_query($sql);
|
|
|
- if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_mviews_mv_name_key'")->fetchField()) {
|
|
|
- $sql = "ALTER INDEX tripal_mviews_mv_name_key RENAME TO tripal_mviews_mv_name_key2";
|
|
|
- }
|
|
|
- else {
|
|
|
- $sql = "CREATE UNIQUE INDEX tripal_mviews_mv_name_key2 ON tripal_mviews2 USING btree (name)";
|
|
|
- }
|
|
|
- db_query($sql);
|
|
|
- if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_mviews_mv_table_key'")->fetchField()) {
|
|
|
- $sql = "ALTER INDEX tripal_mviews_mv_table_key RENAME TO tripal_mviews_mv_table_key2";
|
|
|
- }
|
|
|
- else {
|
|
|
- $sql = "CREATE UNIQUE INDEX tripal_mviews_mv_table_key2 ON tripal_mviews2 USING btree (mv_table)";
|
|
|
- }
|
|
|
- db_query($sql);
|
|
|
- if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_mviews_mview_id_idx'")->fetchField()) {
|
|
|
- $sql = "ALTER INDEX tripal_mviews_mview_id_idx RENAME TO tripal_mviews_mview_id_idx2";
|
|
|
- }
|
|
|
- else {
|
|
|
- $sql = "CREATE INDEX tripal_mviews_mview_id_idx2 ON tripal_mviews2 USING btree (mview_id)";
|
|
|
- }
|
|
|
- db_query($sql);
|
|
|
- if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_mviews_pkey'")->fetchField()) {
|
|
|
- $sql = "ALTER INDEX tripal_mviews_pkey RENAME TO tripal_mviews_pkey2";
|
|
|
- }
|
|
|
- else {
|
|
|
- $sql = "CREATE UNIQUE INDEX tripal_mviews_pkey2 ON tripal_mviews2 USING btree (mview_id)";
|
|
|
- }
|
|
|
- db_query($sql);
|
|
|
- }
|
|
|
-
|
|
|
- if (db_table_exists('tripal_custom_tables')) {
|
|
|
- // Move the tripal_custom_tables table out of the way.
|
|
|
- $sql = "ALTER TABLE tripal_custom_tables RENAME TO tripal_custom_tables2";
|
|
|
- db_query($sql);
|
|
|
- if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_custom_tables_pkey'")->fetchField()) {
|
|
|
- $sql = "ALTER INDEX tripal_custom_tables_pkey RENAME TO tripal_custom_tables_pkey2";
|
|
|
- }
|
|
|
- else {
|
|
|
- $sql = "CREATE UNIQUE INDEX tripal_custom_tables_pkey2 ON tripal_custom_tables2 USING btree (table_id)";
|
|
|
- }
|
|
|
- db_query($sql);
|
|
|
- if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_custom_tables_table_id_idx'")->fetchField()) {
|
|
|
- $sql = "ALTER INDEX tripal_custom_tables_table_id_idx RENAME TO tripal_custom_tables_table_id_idx2";
|
|
|
- }
|
|
|
- else {
|
|
|
- $sql = "CREATE INDEX tripal_custom_tables_table_id_idx2 ON tripal_custom_tables2 USING btree (table_id)";
|
|
|
- }
|
|
|
- db_query($sql);
|
|
|
- }
|
|
|
-
|
|
|
- if (db_table_exists('tripal_cv_obo')) {
|
|
|
- // Move the tripal_cv_obo table out of the way.
|
|
|
- $sql = "ALTER TABLE tripal_cv_obo RENAME TO tripal_cv_obo2";
|
|
|
- db_query($sql);
|
|
|
- if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_cv_obo_obo_id_idx'")->fetchField()) {
|
|
|
- $sql = "ALTER INDEX tripal_cv_obo_obo_id_idx RENAME TO tripal_cv_obo_obo_id_idx2";
|
|
|
- }
|
|
|
- else {
|
|
|
- $sql = "CREATE INDEX tripal_cv_obo_obo_id_idx2 ON tripal_cv_obo2 USING btree (obo_id)";
|
|
|
- }
|
|
|
- db_query($sql);
|
|
|
- if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_cv_obo_pkey'")->fetchField()) {
|
|
|
- $sql = "ALTER INDEX tripal_cv_obo_pkey RENAME TO tripal_cv_obo_pkey2";
|
|
|
- }
|
|
|
- else {
|
|
|
- $sql = "CREATE UNIQUE INDEX tripal_cv_obo_pkey2 ON tripal_cv_obo2 USING btree (obo_id)";
|
|
|
- }
|
|
|
- db_query($sql);
|
|
|
- }
|
|
|
-
|
|
|
- if (db_table_exists('tripal_cv_defaults')) {
|
|
|
- // Move the tripal_cv_defaults table out of the way.
|
|
|
- $sql = "ALTER TABLE tripal_cv_defaults RENAME TO tripal_cv_defaults2";
|
|
|
- db_query($sql);
|
|
|
- if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_cv_defaults_pkey'")->fetchField()) {
|
|
|
- $sql = "ALTER INDEX tripal_cv_defaults_pkey RENAME TO tripal_cv_defaults_pkey2";
|
|
|
- }
|
|
|
- else {
|
|
|
- $sql = "CREATE UNIQUE INDEX tripal_cv_defaults_pkey2 ON tripal_cv_defaults2 USING btree (cv_default_id)";
|
|
|
- }
|
|
|
- db_query($sql);
|
|
|
- if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_cv_defaults_tripal_cv_defaults_idx1_idx'")->fetchField()) {
|
|
|
- $sql = "ALTER INDEX tripal_cv_defaults_tripal_cv_defaults_idx1_idx RENAME TO tripal_cv_defaults_tripal_cv_defaults_idx1_idx2";
|
|
|
- }
|
|
|
- else {
|
|
|
- $sql = "CREATE INDEX tripal_cv_defaults_tripal_cv_defaults_idx1_idx2 ON tripal_cv_defaults2 USING btree (table_name, field_name)";
|
|
|
- }
|
|
|
- db_query($sql);
|
|
|
- if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_cv_defaults_tripal_cv_defaults_unq1_key'")->fetchField()) {
|
|
|
- $sql = "ALTER INDEX tripal_cv_defaults_tripal_cv_defaults_unq1_key RENAME TO tripal_cv_defaults_tripal_cv_defaults_unq1_key2";
|
|
|
- }
|
|
|
- else {
|
|
|
- $sql = "CREATE UNIQUE INDEX tripal_cv_defaults_tripal_cv_defaults_unq1_key2 ON tripal_cv_defaults2 USING btree (table_name, field_name, cv_id)";
|
|
|
- }
|
|
|
- db_query($sql);
|
|
|
- }
|
|
|
-
|
|
|
- if (db_table_exists('tripal_pub_import')) {
|
|
|
- // Move the tripal_pub_import table out of the way.
|
|
|
- $sql = "ALTER TABLE tripal_pub_import RENAME TO tripal_pub_import2";
|
|
|
- db_query($sql);
|
|
|
- if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_pub_import_name_idx'")->fetchField()) {
|
|
|
- $sql = "ALTER INDEX tripal_pub_import_name_idx RENAME TO tripal_pub_import_name_idx2";
|
|
|
- }
|
|
|
- else {
|
|
|
- $sql = "CREATE INDEX tripal_pub_import_name_idx2 ON tripal_pub_import2 USING btree (name)";
|
|
|
- }
|
|
|
- db_query($sql);
|
|
|
- if (db_query("SELECT 1 FROM pg_indexes WHERE indexname = 'tripal_pub_import_pkey'")->fetchField()) {
|
|
|
- $sql = "ALTER INDEX tripal_pub_import_pkey RENAME TO tripal_pub_import_pkey2";
|
|
|
- }
|
|
|
- else {
|
|
|
- $sql = "CREATE UNIQUE INDEX tripal_pub_import_pkey2 ON tripal_pub_import2 USING btree (pub_import_id)";
|
|
|
- }
|
|
|
- db_query($sql);
|
|
|
- }
|
|
|
-
|
|
|
- variable_set ('tripal_v2_upgrade_v3_check_chado', TRUE);
|
|
|
- }
|
|
|
- // Links TripalEntity entities to the chado record.
|
|
|
- $schema['chado_entity'] = tripal_chado_chado_entity_schema();
|
|
|
- $schema['tripal_mviews'] = tripal_chado_tripal_mviews_schema();
|
|
|
- $schema['tripal_custom_tables'] = tripal_chado_tripal_custom_tables_schema();
|
|
|
-
|
|
|
- $schema['tripal_cv_obo'] = tripal_chado_tripal_cv_obo_schema();
|
|
|
- $schema['tripal_cv_defaults'] = tripal_chado_tripal_cv_defaults_schema();
|
|
|
- $schema['tripal_pub_import'] = tripal_chado_tripal_pub_import_schema();
|
|
|
-
|
|
|
- // if this module is already installed and enabled, then we want to provide
|
|
|
- // the schemas for all of the custom tables. This will allow Views to
|
|
|
- // see the schemas. We check if the module is installed because during
|
|
|
- // installation we don't want to make these custom tables available as we don't
|
|
|
- // want them created in the Drupal database. The custom tables go in the
|
|
|
- // Chado database.
|
|
|
- if (db_table_exists('tripal_custom_tables')) {
|
|
|
- $sql = 'SELECT * FROM {tripal_custom_tables}';
|
|
|
- $results = db_query($sql);
|
|
|
- foreach ($results as $custom) {
|
|
|
- $schema[$custom->table_name] = unserialize($custom->schema);
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- return $schema;
|
|
|
-}
|
|
|
-
|
|
|
/**
|
|
|
* @section
|
|
|
* Schema Definitions.
|