| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133 | 
							- <?php
 
- /*******************************************************************************
 
- *  Implementation of hook_install();
 
- */
 
- function tripal_analysis_go_install(){
 
-   
 
-    tripal_analysis_register_child('tripal_analysis_go');
 
-    
 
-    // The following view will create counts of features that are assigned
 
-    // either directly or by ancestry each GO term. The count is organized by
 
-    // organisms.
 
-    $previous_db = db_set_active('chado');
 
-    if (db_table_exists('go_count_organism')) {
 
-       $sql = "DROP TABLE go_count_organism";
 
-       db_query($sql);
 
-    }
 
-    if (db_table_exists('go_count_analysis')) {
 
-       $sql = "DROP TABLE go_count_analysis";
 
-       db_query($sql);
 
-    }
 
-    db_set_active($previous_db);
 
-    
 
-    tripal_add_mview(
 
-       // view name
 
-       'go_count_organism',
 
-       // tripal module name
 
-       'tripal_analysis_go',
 
-       // table name
 
-       'go_count_organism',
 
-       // table schema definition
 
-       'cvname character varying(255),
 
-        cvterm_id integer,
 
-        organism_id integer,
 
-        feature_count integer',
 
-       // columns for indexing
 
-       'cvterm_id,organism_id',
 
-       // SQL statement to populate the view
 
-       "SELECT T1.cvname, T1.object_id, T1.organism_id, count(T1.feature_id)
 
-        FROM
 
-          (SELECT DISTINCT CVT3.name as cvname, CVTP.object_id, 
 
-             O.organism_id, F.feature_id
 
-           FROM {cvtermpath} CVTP
 
-             INNER JOIN CVTerm CVT          ON CVTP.subject_id = CVT.cvterm_id
 
-             INNER JOIN CVTerm CVT2         ON CVTP.type_id = CVT2.cvterm_id
 
-             INNER JOIN CVTerm CVT3         ON CVTP.object_id = CVT3.cvterm_id
 
-             INNER JOIN Feature_cvterm FCVT ON FCVT.cvterm_id = CVT.cvterm_id
 
-             INNER JOIN Feature F           ON FCVT.feature_id = F.feature_id
 
-             INNER JOIN CV                  ON CV.cv_id = CVT.cv_id
 
-             INNER JOIN Organism O          ON O.organism_id = F.organism_id
 
-           WHERE (CV.name = 'biological_process' or 
 
-                  CV.name = 'molecular_function' or 
 
-                  CV.name = 'cellular_component')
 
-          ) as T1
 
-        GROUP BY T1.cvname,T1.object_id,T1.organism_id",
 
-       // special index
 
-       ''
 
-    );
 
-    // The following view will create counts of features that are assigned
 
-    // either directly or by ancestry each GO term. The count is organized by
 
-    // tripal_go_analysis analyses.
 
-    tripal_add_mview(
 
-       // view name
 
-       'go_count_analysis',
 
-       // tripal module name
 
-       'tripal_analysis_go',
 
-       // table name
 
-       'go_count_analysis',
 
-       // table schema definition
 
-       'cvname character varying(255),
 
-        cvterm_id integer,
 
-        analysis_id integer,
 
-        organism_id integer,
 
-        feature_count integer',
 
-       // columns for indexing
 
-       'cvterm_id,analysis_id,organism_id',
 
-       // SQL statement to populate the view
 
-       "SELECT T1.cvname,T1.cvterm_id,T1.analysis_id,T1.organism_id,count(*) as feature_count 
 
-        FROM
 
-         (SELECT DISTINCT AF.analysis_id, AF.feature_id,CVT.name as cvname,
 
-            CVT.cvterm_id,CVTP.object_id,CV.name, F.organism_id 
 
-          FROM {analysisfeatureprop} AFP
 
-            INNER JOIN analysisfeature AF ON AF.analysisfeature_id = AFP.analysisfeature_id
 
-            INNER JOIN feature F          ON AF.feature_id = F.feature_id
 
-            INNER JOIN cvtermpath CVTP    ON CVTP.subject_id = AFP.type_id
 
-            INNER JOIN cvterm CVT         ON CVTP.object_id = CVT.cvterm_id
 
-            INNER JOIN CV                 ON CV.cv_id = CVT.cv_id
 
-          WHERE  
 
-            (CV.name = 'biological_process' or 
 
-             CV.name = 'molecular_function' or 
 
-             CV.name = 'cellular_component')) as T1
 
-        GROUP BY T1.cvname,T1.cvterm_id,T1.analysis_id,T1.organism_id",
 
-       // special index
 
-       ''
 
-    );
 
- }
 
- /*******************************************************************************
 
- * Implementation of hook_uninstall()
 
- */
 
- function tripal_analysis_go_uninstall(){
 
-    $mview = tripal_mviews_get_mview_id('go_count_organism');
 
-    if($mview){
 
-       tripal_mviews_action('delete',$mview);
 
-    }
 
-    $mview = tripal_mviews_get_mview_id('go_count_analysis');
 
-    if($mview){
 
-       tripal_mviews_action('delete',$mview);
 
-    }
 
-    tripal_analysis_unregister_child('tripal_analysis_go');
 
- }
 
- /*******************************************************************************
 
-  * Implementation of hook_requirements(). Make sure 'Tripal Core' and 'Tripal
 
-  * Analysis' are enabled before installation
 
-  */
 
- function tripal_analysis_go_requirements($phase) {
 
-    $requirements = array();
 
-    if ($phase == 'install') {
 
-       if (!function_exists('tripal_create_moddir') || !function_exists('tripal_analysis_register_child')) {
 
-          $requirements ['tripal_analysis_go'] = array(
 
-             'title' => "tripal_analysis_go",
 
-             'value' => "error. Some required modules are just being installed. Please try again.",
 
-             'severity' => REQUIREMENT_ERROR,
 
-          );
 
-       }
 
-    }
 
-    return $requirements;
 
- }
 
 
  |