Hello!

To see the file structure, click on "tree".

Note that updates take place every 10 minutes, commits may not be seen immediately.
svn path=/; revision=433
authormiles <miles@localhost>
Wed, 13 Mar 2013 01:11:04 +0000 (01:11 +0000)
committermiles <miles@localhost>
Wed, 13 Mar 2013 01:11:04 +0000 (01:11 +0000)
Personnel/miles/Web Page/infoChoice.php [new file with mode: 0644]
Personnel/miles/Web Page/viewOntology.php [new file with mode: 0644]

diff --git a/Personnel/miles/Web Page/infoChoice.php b/Personnel/miles/Web Page/infoChoice.php
new file mode 100644 (file)
index 0000000..0d0a694
--- /dev/null
@@ -0,0 +1,146 @@
+<!DOCTYPE html>
+<html>
+<body>
+<?php
+if($_POST["type"] == "cluster") {
+
+      $username="inparanoid-read-user";
+      $password="inparanoid-read-user_pw";
+      $database="inparanoid_data";
+      $url="floret.cgrb.oregonstate.edu:3306";
+
+      $info = explode(",",$_POST['param']);
+
+      $connection=mysql_connect($url,$username,$password);
+      mysql_select_db($database);
+      $query="select species, gene from super_clust where super_id=" . $info[0] . " order by species";
+      $results=mysql_query($query);
+
+      $numRows = mysql_num_rows($results);
+
+      if(!$results) {
+       echo "DB Error, could not list tables";
+       }
+      echo "Cluster " . $info[1] . " contains " . $numRows . " genes: <br /> <br />";
+
+      $row = mysql_fetch_row($results);
+      while($row != null) {
+       $str=$row[1] . " (" . $row[0] . ")";
+       echo "<a href=\"http://planteome.cgrb.oregonstate.edu/node/11?species=" . $row[0] . "&gene=" . $row[1] . "\">" . $str . "</a> <br>";
+       $row = mysql_fetch_row($results);
+       }
+
+      mysql_close($connection);
+
+} else if($_POST["type"] == "species") {
+      $username="inparanoid-read-user";
+      $password="inparanoid-read-user_pw";
+      $database="inparanoid_data";
+      $url="floret.cgrb.oregonstate.edu:3306";
+
+      $input = explode(",",$_POST['param']);
+
+      $species = $input[0];
+      $clusterCount = sizeof($input)-1;
+
+      // creating logic statements
+      $clusters = "super_id=";
+      for($i=0; $i < $clusterCount; $i++) {
+       $clusters = $clusters . $input[$i+1];
+       if(($i+1) < (sizeof($input)-1)) {
+         $clusters = $clusters . " or super_id=";
+         }
+       }
+
+      // setting key values for mapping from gene ids to iterative ids (for user's sake)
+      $ids;
+      for($i=0; $i<$clusterCount; $i++) {
+       $ids[(string)$input[($i+1)]] = (string) ($i+1);
+  }
+
+$connection=mysql_connect($url,$username,$password);
+mysql_select_db($database);
+$query="select gene,super_id from super_clust where species=\"" . $species . "\" and (" . $clusters . ")";
+$results=mysql_query($query);
+
+$numRows = mysql_num_rows($results);
+
+if(!$results) {
+  echo "DB Error, could not list tables";
+  }
+echo str_replace("_"," ",$species) . " has " . $numRows . " genes in the surveyed clusters: <br /> <br />";
+
+echo "GENE ID  --------------------  CLUSTER ID <br \>";
+
+$data;
+$i=0;
+for($row = mysql_fetch_row($results); $row != null; $row = mysql_fetch_row($results)) {
+  $data[$i] = $ids[(string)$row[1]] . "," . $row[0];
+  $i = $i+1;
+  }
+
+sort($data);
+$i = 0;
+$species = str_replace(" ", "_", $species);
+
+while($i < sizeof($data)) {
+$temp = explode(",", $data[$i]);
+$str = $temp[1] . "  -----------  " . $temp[0];
+echo "<a href=\"http://planteome.cgrb.oregonstate.edu/node/11?species=" . $species . "&gene=" . $temp[1] . "\">" . $str . "</a> <br>";
+$i++;
+}
+
+//id + gene -> sort -> split -> print;
+//  $row = mysql_fetch_row($results);
+  
+mysql_close($connection);
+
+} else if($_POST["type"] == "box") {
+      $username="inparanoid-read-user";
+      $password="inparanoid-read-user_pw";
+      $database="inparanoid_data";
+      $url="floret.cgrb.oregonstate.edu:3306";
+      $info=explode(",", $_POST['param']);
+      $cluster=$info[0];
+      $species=$info[1];
+      $clusterIndex=$info[2];
+      $count = $info[3];
+
+      $connection=mysql_connect($url,$username,$password);
+      mysql_select_db($database);
+
+      $query="select gene from super_clust where super_id=" . $cluster . " && species=\"" . $species . "\" order by gene";
+      $results=mysql_query($query);
+
+      if(!$results) {
+       echo "DB Error, could not list tables";
+       }
+
+      echo str_replace("_", " ", $species) . " has " . $count . " genes in cluster " . $clusterIndex . ": <br> <br>\n";
+
+      echo "<form name=\"Branch\" method=\"post\" action=\"viewOntology.php\">\n";
+      echo "<input type=\"submit\" value=\"View Ontology\">\n";
+      echo "<input type=\"hidden\" name=\"param\" value=\"\">\n";
+      echo "</form>\n";
+      echo "<br> <br>\n";
+
+      $genes="";
+      $row = mysql_fetch_row($results);
+      while($row != null) {
+       echo "<a href=\"http://planteome.cgrb.oregonstate.edu/node/11?species=" . $species . "&gene=" . $row[0] . "\">" . $row[0] . "</a> <br>";
+       $genes = $genes . $row[0] . ",";
+       $row = mysql_fetch_row($results);
+       }
+      mysql_close($connection);
+}
+
+?>
+
+<script type="text/javascript">
+if(<?php echo ($_POST["type"] == "box") ?> == 1) {
+  document.Branch.param.value = "<?php echo $genes ?>";
+}
+</script>
+
+</body>
+</html>
\ No newline at end of file
diff --git a/Personnel/miles/Web Page/viewOntology.php b/Personnel/miles/Web Page/viewOntology.php
new file mode 100644 (file)
index 0000000..1a8e4b6
--- /dev/null
@@ -0,0 +1,145 @@
+<!DOCTYPE html>
+<html>
+<body>
+<?php
+$genes;
+$geneProductIDs = "";
+$terms = "";
+
+
+//get rid of any of those messy .somethings after the gene ID
+$tmp = explode(",",$_POST['param']);
+for($i = 0; $i < sizeof($tmp); $i ++) {
+  $newTmp = explode(".",$tmp[$i]);
+  $tmp[$i] = $newTmp[0];
+}
+$genes = $tmp;
+
+
+$username="po-read-user";
+$password="po-read-user_pw";
+$database="po_live";
+$url="floret.cgrb.oregonstate.edu:3306";
+
+$connection=mysql_connect($url,$username,$password);
+mysql_select_db($database);
+
+$logic = "where full_name like '";
+for($i = 0; $i + 1 < sizeof($genes); $i ++) { // note that the last parameter of $genes is an empty array
+  $toAdd = $genes[$i] . "'";
+  if($i + 2 < sizeof($genes)) {
+    $toAdd = $toAdd . " or full_name like '";
+  }
+  $logic = $logic . $toAdd;
+  
+}
+echo "<br> logic: " . $logic . "<br>";
+$query="select id from gene_product " . $logic . " order by id";
+$results=mysql_query($query);
+
+
+$i = 0;
+for($row = mysql_fetch_row($results); $row != null; $row = mysql_fetch_row($results)) {
+  $geneProductIDs[$i] = $row[0];
+  $i++;
+  }
+
+$logic = "where gene_product_id=";
+for($i = 0; $i + 1 < sizeof($geneProductIDs); $i++) {
+  $toAdd = $geneProductIDs[$i];
+  if($i + 2 < sizeof($geneProductIDs)) {
+    $toAdd = $toAdd . " or gene_product_id=";
+  }
+  $logic = $logic . $toAdd;
+}
+
+$query="select term_id from association " . $logic . " order by term_id";
+$results=mysql_query($query);
+
+$i = 0;
+for($row = mysql_fetch_row($results); $row != null; $row = mysql_fetch_row($results)) {
+  $termIDs[$i] = $row[0];
+  $i++;
+  }
+
+$logic = "where id='";
+for($i = 0; $i + 1 < sizeof($termIDs); $i++) {
+  $toAdd = $termIDs[$i] . "'";
+  if($i + 2 < sizeof($termIDs)) {
+    $toAdd = $toAdd . " or id='";
+  }
+  $logic = $logic . $toAdd;
+}
+
+$query="select name from term " . $logic . " order by name";
+$results=mysql_query($query);
+
+$i = 0;
+for($row = mysql_fetch_row($results); $row != null; $row = mysql_fetch_row($results)) {
+  $terms[$i] = $row[0];
+  $i++;
+  }
+
+?>
+
+<div id="canvasDiv" style="overflow: hidden; float: left; height: 500px; width: 1100px;">
+<canvas id="myCanvas" width="1500" height="1000" style="border:1px solid #c3c3c3;">
+Your browser does not support the canvas element.
+</canvas> </div>
+
+<div id="scrollDiv" style="overflow: auto; float: left; height: 515px; width: 15px;" onscroll="drawMap();">
+<canvas id="nothing" width="1" height="<?php echo 250 + sizeof($allClusterIDs)*25 ?>"> </canvas>
+</div>
+
+
+<script type="text/javascript">
+var rawGenes = "<?php echo $_POST['param'] ?>";
+var genes = rawGenes.split(",");
+var geneCount = genes.length;
+
+var rawTerms = "<?php echo implode(",",$terms) ?>";
+var terms = rawTerms.split(",");
+var termCount = terms.length;
+
+var canvas = document.getElementById("myCanvas");
+var ontMap = canvas.getContext("2d");
+var startTerm = 0;
+
+var topOffset = 210;
+var leftOffset = 50;
+
+var cellSize = 10;
+var maxRows = Math.floor((500-topOffset)/cellSize);
+var maxCols = Math.floor((1000-leftOffset)/cellSize);
+
+
+function drawTerms(startTerm) {
+  //black for text
+  ontMap.fillStyle = "#000000";
+
+  //rotating the canvas for labeling the terms
+  ontMap.rotate(-90*Math.PI/180);
+  ontMap.translate(-topOffset,0);
+
+  //labeling the terms
+  var translated = 0;
+  for (var s=startTerm; (s<termCount) && (s<=startTerm+maxCols); s++) {
+      term = terms[s];
+      finalTerm = term.replace("_", " ");
+      ontMap.fillText(finalTerm,4, leftOffset + 15);
+      ontMap.translate(0,cellSize);
+      translated = translated + cellSize;
+    }
+  //resetting the canvas to start position
+  ontMap.translate(0,-translated);
+  ontMap.translate(topOffset,0);
+  ontMap.rotate(90*Math.PI/180);
+}
+drawTerms(0);
+
+
+
+</script>
+
+</body>
+</html>