about summary refs log tree commit diff
diff options
context:
space:
mode:
-rwxr-xr-xwqflask/wqflask/gsearch.py21
-rwxr-xr-xwqflask/wqflask/templates/gsearch_pheno.html38
2 files changed, 39 insertions, 20 deletions
diff --git a/wqflask/wqflask/gsearch.py b/wqflask/wqflask/gsearch.py
index dd0815b1..396da4cf 100755
--- a/wqflask/wqflask/gsearch.py
+++ b/wqflask/wqflask/gsearch.py
@@ -1,6 +1,9 @@
 from __future__ import absolute_import, print_function, division
 
 from flask import Flask, g
+from base.data_set import create_dataset
+from base.trait import GeneralTrait
+from dbFunction import webqtlDatabaseFunction
 
 class GSearch(object):
 
@@ -41,6 +44,7 @@ class GSearch(object):
 				SELECT
 				Species.`Name`,
 				InbredSet.`Name`,
+				PublishFreeze.`Name`,
 				PublishXRef.`Id`,
 				Phenotype.`Post_publication_description`,
 				Publication.`Authors`,
@@ -48,8 +52,9 @@ class GSearch(object):
 				PublishXRef.`LRS`,
 				PublishXRef.`Locus`,
 				PublishXRef.`additive`
-				FROM Species,InbredSet,PublishXRef,Phenotype,Publication
+				FROM Species,InbredSet,PublishFreeze,PublishXRef,Phenotype,Publication
 				WHERE PublishXRef.`InbredSetId`=InbredSet.`Id`
+				AND PublishFreeze.`InbredSetId`=InbredSet.`Id`
 				AND InbredSet.`SpeciesId`=Species.`Id`
 				AND PublishXRef.`PhenotypeId`=Phenotype.`Id` 
 				AND PublishXRef.`PublicationId`=Publication.`Id`
@@ -63,6 +68,16 @@ class GSearch(object):
 					OR Publication.Title REGEXP "[[:<:]]%s[[:>:]]" 
 					OR Publication.Authors REGEXP "[[:<:]]%s[[:>:]]" 
 					OR PublishXRef.Id REGEXP "[[:<:]]%s[[:>:]]")
-				ORDER BY Species.`Name`, InbredSet.`Name`, Phenotype.`Post_publication_description`
+				ORDER BY Species.`Name`, InbredSet.`Name`, PublishXRef.`Id`
+				LIMIT 1000
 				""" % (self.terms, self.terms, self.terms, self.terms, self.terms, self.terms, self.terms, self.terms, self.terms, self.terms)
-			self.results = g.db.execute(sql).fetchall()
+			re = g.db.execute(sql).fetchall()
+			self.trait_list = []
+			for line in re:
+				dataset = create_dataset(line[2], "Publish")
+				trait_id = line[3]
+				this_trait = GeneralTrait(dataset=dataset, name=trait_id, get_qtl_info=True)
+				self.trait_list.append(this_trait)
+				species = webqtlDatabaseFunction.retrieve_species(dataset.group.name)
+				dataset.get_trait_info([this_trait], species)
+
diff --git a/wqflask/wqflask/templates/gsearch_pheno.html b/wqflask/wqflask/templates/gsearch_pheno.html
index f6b6efa3..8701673f 100755
--- a/wqflask/wqflask/templates/gsearch_pheno.html
+++ b/wqflask/wqflask/templates/gsearch_pheno.html
@@ -23,33 +23,37 @@
             <button class="btn btn-primary pull-right"><span class="glyphicon glyphicon-download"></span> Download Table</button>
             <br />
             <br />
-            <table class="table table-hover table-striped" id="trait_table">
+			<table class="table table-hover table-striped" id='trait_table'  style="float: left;">
                 <thead>
                     <tr>
-						<th>Index</th>
+                        <th>Index</th>
 						<th>Species</th>
 						<th>Group</th>
-						<th>Record ID</th>
-						<th>Phenotype</th>
-						<th>Authors</th>
-						<th>Year</th>
-						<th>Max LRS</th>
-						<th>Locus</th>
-						<th>Additive</th>
+                        <th>Record</th>
+                        <th>Description</th>
+                        <th>Authors</th>
+                        <th>Year</th>
+                        <th style="text-align: right;">Max&nbsp;&nbsp;<br>LRS<a href="http://genenetwork.org//glossary.html#L" target="_blank"><sup style="color:#f00"> ?</sup></a></th>
+                        <th>Max LRS Location</th>
+                        <th style="text-align: right;">Additive<br>Effect<a href="http://genenetwork.org//glossary.html#A" target="_blank"><sup style="color:#f00"> ?</sup></a></th>
                     </tr>
                 </thead>
-
                 <tbody>
-                    {% for this_trait in results %}
-                    <TR>
-						<td><input type="checkbox">{{ loop.index }}</td>
-                        {% for item in this_trait %}
-							<TD>{{ item }}</TD>
-						{% endfor %}
+                 {% for this_trait in trait_list %}
+                    <TR id="trait:{{ this_trait.name }}:{{ this_trait.dataset.name }}">
+                        <TD>{{ loop.index }}<INPUT TYPE="checkbox" NAME="searchResult" class="checkbox trait_checkbox" VALUE="{{ data_hmac('{}:{}'.format(this_trait.name, this_trait.dataset.name)) }}"></TD>
+                        <TD>{{ this_trait.dataset.group.species }}</TD>
+						<TD>{{ this_trait.dataset.group.name }}</TD>
+						<TD><a href="{{ url_for('show_trait_page', trait_id = this_trait.name, dataset = this_trait.dataset.name)}}">{{ this_trait.name }}</a></TD>
+                        <TD>{{ this_trait.description_display }}</TD>
+						<TD>{{ this_trait.authors }}</TD>
+						<TD><a href="{{ this_trait.pubmed_link }}">{{ this_trait.pubmed_text }}</a></TD>
+						<TD>{{ this_trait.LRS_score_repr }}</TD>
+						<TD>{{ this_trait.LRS_location_repr }}</TD>
+						<TD>{{ '%0.3f' % this_trait.additive|float }}</TD>
                     </TR>
                 {% endfor %}
                 </tbody>
-
             </table>
         </div>
     </div>