소스 검색

Updated the tripal_stock api

laceysanderson 14 년 전
부모
커밋
01c9a7625a
2개의 변경된 파일48개의 추가작업 그리고 321개의 파일을 삭제
  1. 0 289
      tripal_stock/other_module_api_functions.inc
  2. 48 32
      tripal_stock/tripal_stock.api.inc

+ 0 - 289
tripal_stock/other_module_api_functions.inc

@@ -51,292 +51,3 @@ function get_max_chado_rank ($tablename, $where_options) {
 		return -1;
 	}
 }
-
-///////////////////////////////////////////////////////////////////////////
-// Module: tripal_cv
-///////////////////////////////////////////////////////////////////////////
-
-/*************************************************************************
- * Purpose: To retrieve a chado cv object
- *
- * @params where_options: array(
- *													<column_name> => array(
- *														'type' => <type of column: INT/STRING>,
- *														'value' => <the vlaue you want to filter on>,
- *														'exact' => <if TRUE use =; if FALSE use ~>,
- *													)
- *				)
- * @return chado cv object with all fields from the chado cv table
- */
-function get_chado_cv ($where_options) {
-	$previous_db = tripal_db_set_active('chado');
-
-	$where= array();
-	//generate the where clause from supplied options
-	// the key is the column name
-	foreach ($where_options as $key => $val_array) {
-		if (preg_match('/INT/', $val_array['type'])) {
-			$where[] = $key."=".$val_array['value'];
-		} else {
-			if ($val_array['exact']) { $operator='='; }
-			else { $operator='~'; }
-			$where[] = $key.$operator."'".$val_array['value']."'";
-		}
-	}
-	
-  $r = db_fetch_object(db_query(
-    "SELECT * FROM cv WHERE ".implode(' AND ',$where)
-  ));
-  
-  tripal_db_set_active($previous_db);
-
-  return $r;
-}
-
-/*************************************************************************
- * Purpose: Create an options array to be used in a form element
- *   which provides a list of all chado cvs
- *
- * @return an array(cv_id => name) for each cv in the chado cv table
- */
-function get_chado_cv_options() {
-
-  $previous_db = tripal_db_set_active('chado');
-  $result = db_query(
-    "SELECT cv_id, name FROM cv"
-  );
-  db_set_active($previous_db);
-
-  $options = array();
-  while ( $r = db_fetch_object($result) ) {
-    $options[$r->cv_id] = $r->name;
-  }
-
-  return $options;
-
-}
-
-/*************************************************************************
- * Purpose: To retrieve a chado cvterm object
- *
- * @params where_options: array(
- *													<column_name> => array(
- *														'type' => <type of column: INT/STRING>,
- *														'value' => <the vlaue you want to filter on>,
- *														'exact' => <if TRUE use =; if FALSE use ~>,
- *													)
- *				)
- * @return chado cvterm object with all fields from the chado cvterm table
- */
-function get_chado_cvterm ($where_options) {
-	$previous_db = tripal_db_set_active('chado');
-
-	$where= array();
-	//generate the where clause from supplied options
-	// the key is the column name
-	foreach ($where_options as $key => $val_array) {
-		if (preg_match('/INT/', $val_array['type'])) {
-			$where[] = $key."=".$val_array['value'];
-		} else {
-			if ($val_array['exact']) { $operator='='; }
-			else { $operator='~'; }
-			$where[] = $key.$operator."'".$val_array['value']."'";
-		}
-	}
-	
-  $r = db_fetch_object(db_query(
-    "SELECT * FROM cvterm WHERE ".implode(' AND ',$where)
-  ));
-  
-  tripal_db_set_active($previous_db);
-
-  return $r;
-}
-
-/*************************************************************************
- * Purpose: Create an options array to be used in a form element
- *   which provides a list of all chado cvterms
- * 
- * @params cv_id: the chado cv_id
- *   only cvterms with the supplied cv_id will be returned
- * @return an array(cvterm_id => name) 
- *   for each cvterm in the chado cvterm table where cv_id=that supplied
- */
-function get_chado_cvterm_options($cv_id = 0) {
-
-  $previous_db = tripal_db_set_active('chado');
-  if ($cv_id > 0) {
-  	$result = db_query(
-    	"SELECT cvterm_id, name FROM cvterm WHERE cv_id=%d", $cv_id
-  	);
-  } else {
-  	$result = db_query(
-    	"SELECT cvterm_id, name FROM cvterm"
-  	);
-  }
-  db_set_active($previous_db);
-
-  $options = array();
-  while ( $r = db_fetch_object($result) ) {
-    $options[$r->cvterm_id] = $r->name;
-  }
-
-  return $options;
-
-}
-
-///////////////////////////////////////////////////////////////////////////
-// Module: tripal_db
-///////////////////////////////////////////////////////////////////////////
-
-/*************************************************************************
- * Purpose: To retrieve a chado db object
- *
- * @params where_options: array(
- *													<column_name> => array(
- *														'type' => <type of column: INT/STRING>,
- *														'value' => <the vlaue you want to filter on>,
- *														'exact' => <if TRUE use =; if FALSE use ~>,
- *													)
- *				)
- * @return chado db object with all fields from the chado db table
- */
-function get_chado_db ($where_options) {
-	$previous_db = tripal_db_set_active('chado');
-
-	$where= array();
-	//generate the where clause from supplied options
-	// the key is the column name
-	foreach ($where_options as $key => $val_array) {
-		if (preg_match('/INT/', $val_array['type'])) {
-			$where[] = $key."=".$val_array['value'];
-		} else {
-			if ($val_array['exact']) { $operator='='; }
-			else { $operator='~'; }
-			$where[] = $key.$operator."'".$val_array['value']."'";
-		}
-	}
-	
-  $r = db_fetch_object(db_query(
-    "SELECT * FROM db WHERE ".implode(' AND ',$where)
-  ));
-  
-  tripal_db_set_active($previous_db);
-
-  return $r;
-}
-
-/*************************************************************************
- * Purpose: Create an options array to be used in a form element
- *   which provides a list of all chado dbs
- *
- * @return an array(db_id => name) for each db in the chado db table
- */
-function get_chado_db_options() {
-
-  $previous_db = tripal_db_set_active('chado');
-  $result = db_query(
-    "SELECT db_id, name FROM db"
-  );
-  db_set_active($previous_db);
-
-  $options = array();
-  while ( $r = db_fetch_object($result) ) {
-    $options[$r->db_id] = $r->name;
-  }
-
-  return $options;
-
-}
-
-/*************************************************************************
- * Purpose: To retrieve a chado dbxref object
- *
- * @params where_options: array(
- *													<column_name> => array(
- *														'type' => <type of column: INT/STRING>,
- *														'value' => <the vlaue you want to filter on>,
- *														'exact' => <if TRUE use =; if FALSE use ~>,
- *													)
- *				)
- * @return chado dbxref object with all fields from the chado dbxref table
- */
-function get_chado_dbxref ($where_options) {
-	$previous_db = tripal_db_set_active('chado');
-
-	$where= array();
-	//generate the where clause from supplied options
-	// the key is the column name
-	foreach ($where_options as $key => $val_array) {
-		if (preg_match('/INT/', $val_array['type'])) {
-			$where[] = $key."=".$val_array['value'];
-		} else {
-			if ($val_array['exact']) { $operator='='; }
-			else { $operator='~'; }
-			$where[] = $key.$operator."'".$val_array['value']."'";
-		}
-	}
-	
-  $r = db_fetch_object(db_query(
-    "SELECT * FROM dbxref WHERE ".implode(' AND ',$where)
-  ));
-  
-  tripal_db_set_active($previous_db);
-
-  return $r;
-}
-
-///////////////////////////////////////////////////////////////////////////
-// Module: tripal_organism
-///////////////////////////////////////////////////////////////////////////
-
-/*************************************************************************
- * Purpose: Create an options array to be used in a form element
- *   which provides a list of all chado organisms
- *
- * @return an array(organism_id => common_name) 
- *   for each organism in the chado organism table
- */
-function get_chado_organism_options() {
-
-  $previous_db = tripal_db_set_active('chado');
-  $result = db_query(
-    "SELECT organism_id, common_name FROM organism"
-  );
-  tripal_db_set_active($previous_db);
-
-  $options = array();
-  while ( $r = db_fetch_object($result) ) {
-    $options[$r->organism_id] = $r->common_name;
-  }
-
-  return $options;
-
-}
-
-/*************************************************************************
- * Purpose: Return a given organism object using the nid or organism id
- *
- * @return organism object created by node load
- */
-function get_chado_organism($nid=0, $organism_id=0) {
-
-	if (!empty($nid)) {
-		return node_load($nid);
-	} else {
-		if (!empty($organism_id)) {
-			$sql = "SELECT nid FROM {chado_organism} WHERE organism_id=%d";
-			$r = db_fetch_object(db_query($sql, $organism_id));
-			if (!empty($r->nid)) {
-				return node_load($r->nid);
-			} else {
-				drupal_set_message("Function: get_chado_organism() -no organism with that organism id sync'd with drupal", 'error');
-			}
-		} else {
-			drupal_set_message("Function: get_chado_organism() -need to supply at least one of node ID or Organism ID",'error');
-		}
-	}
-
-	return 0;
-	
-}

+ 48 - 32
tripal_stock/tripal_stock-api_functions.inc → tripal_stock/tripal_stock.api.inc

@@ -1,5 +1,45 @@
 <?php
+ 
+/*************************************************************************
+ * @section: Return a Single Stock
+ *************************************************************************/
+
+/*************************************************************************
+ * Purpose: Return a given stock object using the nid
+ *
+ * @return stock object created by node load
+ */
+//function get_chado_stock($nid=0, $stock_id=0) {
+function triapl_stock_get_stock_by_nid ($nid) {
+	
+	return node_load($nid);
+	
+}
 
+/*************************************************************************
+ * Purpose: Return a given stock object using the stock id
+ *
+ * @return stock object created by node load
+ */
+//function get_chado_stock($nid=0, $stock_id=0) {
+function triapl_stock_get_stock_by_stock_id ($stock_id) {
+
+  $sql = "SELECT nid FROM {chado_stock} WHERE stock_id=%d";
+  $r = db_fetch_object(db_query($sql, $stock_id));
+  if (!empty($r->nid)) {
+    return node_load($r->nid);
+  } else {
+    drupal_set_message("Function: triapl_stock_get_stock_by_stock_id() -no stock with that stock id sync'd with drupal", 'error');
+	}
+
+	return 0;
+	
+}
+
+/*************************************************************************
+ * @section: Return Multiple Stocks
+ *************************************************************************/
+ 
 /*************************************************************************
  * Purpose: Returns all stocks currently sync'd with drupal
  *
@@ -7,7 +47,8 @@
  *			<stock_id> => <stock object created by node load>
  *		)
  */
-function get_all_chado_stocks() {
+//function get_all_chado_stocks() {
+function tripal_stock_get_all_stocks() {
 	$sql = "SELECT stock_id, nid from {chado_stock}";
 	$resource = db_query($sql);
 	$stocks = array();
@@ -42,8 +83,9 @@ function get_all_chado_stocks() {
  * @return an array of matching stock objects (produced using node_load)
  *   matching the given criteria
  */
-function get_chado_stocks($criteria, $match_type, $organism_id = NULL, $error_checking = FALSE) {
-	
+//function get_chado_stocks($criteria, $match_type, $organism_id = NULL, $error_checking = FALSE) {
+function tripal_stock_get_stocks($criteria, $match_type, $organism_id = NULL, $error_checking = FALSE) {
+
 	//Deal with unknown column----------------------------
 	if (!empty($criteria['unknown'])) {
 		if ($error_checking) { drupal_set_message('Uknown provided','warning');}
@@ -58,8 +100,8 @@ function get_chado_stocks($criteria, $match_type, $organism_id = NULL, $error_ch
 				$new_criteria[$column_name] = array('type'=>'STRING','value' => $criteria['unknown']['value'], 'regex'=>TRUE);
 			}
 		}
-		if ($error_checking) { drupal_set_message('Re-calling get_chado_stocks(<pre>'.print_r($new_criteria,TRUE).'</pre>, ANY, '.$organism_id.')','warning'); }
-		$unknown_stocks = get_chado_stocks($new_criteria, 'ANY', $organism_id, $error_checking);
+		if ($error_checking) { drupal_set_message('Re-calling tripal_stock_get_stocks(<pre>'.print_r($new_criteria,TRUE).'</pre>, ANY, '.$organism_id.')','warning'); }
+		$unknown_stocks = tripal_stock_get_stocks($new_criteria, 'ANY', $organism_id, $error_checking);
 		if ($error_checking) { drupal_set_message(sizeof($unknown_stocks).' Unknown Stocks', 'warning'); }
 	}
 	unset($criteria['unknown']); //so it's not mistaken as a column in the stock table
@@ -80,7 +122,7 @@ function get_chado_stocks($criteria, $match_type, $organism_id = NULL, $error_ch
 			if ($v['regex']) { $operator = '~'; }
 			else { $operator = '='; }
 			
-			$synonym_cvterm = get_chado_cvterm( array('name' => array('type'=>'STRING','exact'=>TRUE,'value'=>'synonym'),
+			$synonym_cvterm = tripal_cv_get_cvterm_by_name('synonym'),
 																								'cv_id' => array('type'=>'INT', 'value'=> variable_get('chado_stock_prop_types_cv', 'null')) ));
 			$where[] = '(stockprop.type_id='.$synonym_cvterm->cvterm_id.' AND stockprop.value'.$operator."'".$v['value']."')";
 			$joins[] = 'LEFT JOIN stockprop stockprop ON stockprop.stock_id=stock.stock_id';
@@ -169,29 +211,3 @@ function get_chado_stocks($criteria, $match_type, $organism_id = NULL, $error_ch
 
 }
 
-/*************************************************************************
- * Purpose: Return a given stock object using the nid or stock id
- *
- * @return stock object created by node load
- */
-function get_chado_stock($nid=0, $stock_id=0) {
-
-	if (!empty($nid)) {
-		return node_load($nid);
-	} else {
-		if (!empty($stock_id)) {
-			$sql = "SELECT nid FROM {chado_stock} WHERE stock_id=%d";
-			$r = db_fetch_object(db_query($sql, $stock_id));
-			if (!empty($r->nid)) {
-				return node_load($r->nid);
-			} else {
-				drupal_set_message("Function: get_chado_stock() -no stock with that stock id sync'd with drupal", 'error');
-			}
-		} else {
-			drupal_set_message("Function: get_chado_stock() -need to supply at least one of node ID or Stock ID",'error');
-		}
-	}
-
-	return 0;
-	
-}