about summary refs log tree commit diff
diff options
context:
space:
mode:
-rwxr-xr-x[-rw-r--r--]web/faq.html0
-rwxr-xr-x[-rw-r--r--]web/footer.html0
-rwxr-xr-x[-rw-r--r--]web/header.html0
-rwxr-xr-x[-rw-r--r--]web/javascript/footer.js0
-rwxr-xr-x[-rw-r--r--]web/javascript/header.js0
-rwxr-xr-xweb/javascript/selectDatasetMenu.js2
-rwxr-xr-x[-rw-r--r--]web/javascript/webqtl.js2
-rwxr-xr-x[-rw-r--r--]web/reference.html0
-rwxr-xr-xweb/webqtl/.htaccess2
-rwxr-xr-xweb/webqtl/base/indexBody.py5
-rwxr-xr-x[-rw-r--r--]web/webqtl/base/template.py0
-rwxr-xr-x[-rw-r--r--]web/webqtl/base/templatePage.py0
-rwxr-xr-xweb/webqtl/base/webqtlConfigLocal.py8
-rwxr-xr-x[-rw-r--r--]web/webqtl/intervalMapping/IntervalMappingPage.py0
-rwxr-xr-xweb/webqtl/pubmedsearch/PubmedSearch.py58
-rwxr-xr-xweb/webqtl/pubmedsearch/PubmedSearchRe.py57
-rwxr-xr-xweb/webqtl/pubmedsearch/__init__.py0
-rwxr-xr-xweb/webqtl/search/PubmedSearch.py94
-rwxr-xr-x[-rw-r--r--]web/webqtl/search/SearchResultPage.py16
-rwxr-xr-xweb/webqtl/search/pubmedsearch.py12
-rw-r--r--[-rwxr-xr-x]web/webqtl/showTrait/ShowTraitPage.py0
21 files changed, 117 insertions, 139 deletions
diff --git a/web/faq.html b/web/faq.html
index e7d26e37..e7d26e37 100644..100755
--- a/web/faq.html
+++ b/web/faq.html
diff --git a/web/footer.html b/web/footer.html
index 334de26f..334de26f 100644..100755
--- a/web/footer.html
+++ b/web/footer.html
diff --git a/web/header.html b/web/header.html
index 71d27162..71d27162 100644..100755
--- a/web/header.html
+++ b/web/header.html
diff --git a/web/javascript/footer.js b/web/javascript/footer.js
index 18585334..18585334 100644..100755
--- a/web/javascript/footer.js
+++ b/web/javascript/footer.js
diff --git a/web/javascript/header.js b/web/javascript/header.js
index 59fcacd8..59fcacd8 100644..100755
--- a/web/javascript/header.js
+++ b/web/javascript/header.js
diff --git a/web/javascript/selectDatasetMenu.js b/web/javascript/selectDatasetMenu.js
index 65fff775..3bfdc294 100755
--- a/web/javascript/selectDatasetMenu.js
+++ b/web/javascript/selectDatasetMenu.js
@@ -129,7 +129,7 @@ var dArr = [
 {txt:'UCLA CTB6B6CTF2 Muscle Female mlratio **',val:'UCLA_CTB6B6CTF2_MUSCLE_FEMALE'},
 {txt:'UCLA CTB6B6CTF2 Liver Female mlratio **',val:'UCLA_CTB6B6CTF2_LIVER_FEMALE'},
 {txt:'INIA Macaca fasicularis Amygdala (Jan10) RMA **',val:'INIA_MacFas_AMG_RMA_0110'},
-{txt:'VU BXD Midbrain Agilent SurePrint G3 Mouse GE (May12) Quantile',val:'VUBXDMouseMidBrainQ0512'},
+{txt:'VU BXD Midbrain Agilent SurePrint G3 Mouse GE (May12) Quantile **',val:'VUBXDMouseMidBrainQ0512'},
 {txt:'GSE16780 UCLA Hybrid MDP Liver Affy HT M430A (Sep11) RMA',val:'GSE16780_UCLA_ML0911'},
 {txt:'EPFL/LISP BXD CD Muscle Affy Mouse Gene 1.0 ST (Dec11) RMA **',val:'EPFLMouseMuscleCDRMA1211'},
 {txt:'EPFL/LISP BXD Muscle Affy Mouse Gene 1.0 ST (Dec11) RMA **',val:'EPFLMouseMuscleRMA1211'},
diff --git a/web/javascript/webqtl.js b/web/javascript/webqtl.js
index f8dd1a4e..19ecf3b7 100644..100755
--- a/web/javascript/webqtl.js
+++ b/web/javascript/webqtl.js
@@ -945,7 +945,7 @@ function mixedChipError(methodName){
 Used by GoTreePage.py, add the parameter 'chipName'
 */
 function unknownChipError(chipName){
-	alert("Sorry, the analysis was interrupted because your selections from GeneNetwork apparently include data from platform"+ chipName +"which is unknown by WebGestalt. Please reselect traits and submit again.");
+	alert("Sorry, the analysis was interrupted because your selections from GeneNetwork apparently include data from platform "+ chipName +" which is unknown by WebGestalt. Please reselect traits and submit again.");
 	window.close();
 }
 
diff --git a/web/reference.html b/web/reference.html
index e0bf404c..e0bf404c 100644..100755
--- a/web/reference.html
+++ b/web/reference.html
diff --git a/web/webqtl/.htaccess b/web/webqtl/.htaccess
index d5e1aa95..ac3a9699 100755
--- a/web/webqtl/.htaccess
+++ b/web/webqtl/.htaccess
@@ -1,5 +1,5 @@
 AddHandler python-program .py
 PythonHandler main
-PythonInterpreter GeneNetwork
+PythonInterpreter leiyan
 PythonOption session FileSession
 PythonDebug On
diff --git a/web/webqtl/base/indexBody.py b/web/webqtl/base/indexBody.py
index aa67dffa..e73409a5 100755
--- a/web/webqtl/base/indexBody.py
+++ b/web/webqtl/base/indexBody.py
@@ -67,7 +67,7 @@ index_body_string = """
 					<!--  DATABASE  SELECTION -->		
 									<TR>
 										<TD align=right height=35 style="font-size:14px;font-family:verdana;color:black">
-											<B>Database:</B>
+											<B>Data Set:</B>
 										</TD>
 
 										<TD width="3%">
@@ -221,6 +221,7 @@ Quick HELP Examples and </B>
 				<li><a href="http://galaxy.genenetwork.org/" target="_blank">Galaxy</a> at UTHSC</li>
 				<li>GeneNetwork at <a href="http://ec2.genenetwork.org/" target="_blank">Amazon Cloud (EC2)</a></li>
 				<li>GeneNetwork Source Codes at <a href="http://sourceforge.net/projects/genenetwork/" target="_blank">SourceForge</a></li>
+				<li>GeneNetwork Source Codes at <a href="https://github.com/genenetwork/genenetwork" target="_blank">GitHub</a></li>
 			</ul>
 		</p>
 							<P>____________________________
@@ -271,7 +272,7 @@ Quick HELP Examples and </B>
 								<LI><A HREF="http://gn.genetics.ucla.edu/" target="_blank" style="font-size:12px;font-family:verdana;color:blue">California at UCLA</A>
 								<LI><A HREF="http://genenetwork.helmholtz-hzi.de/" target="_blank" style="font-size:12px;font-family:verdana;color:blue">Germany at the HZI</A>
 								<LI><A HREF="https://genenetwork.hubrecht.eu/" target="_blank" style="font-size:12px;font-family:verdana;color:blue">Netherlands at the Hubrecht</A> (Development)
-								<LI><A HREF="http://xzhou3.memphis.edu/" target="_blank" style="font-size:12px;font-family:verdana;color:blue">Memphis at the U of M</A>
+								<LI><A HREF="http://genenetwork.memphis.edu/" target="_blank" style="font-size:12px;font-family:verdana;color:blue">Memphis at the U of M</A>
 								<LI><A HREF="http://webqtl.bic.nus.edu.sg/" target="_blank" style="font-size:12px;font-family:verdana;color:blue">Singapore at the NUS</A>
  								<LI><A HREF="http://genenetwork.epfl.ch/" target="_blank" style="font-size:12px;font-family:verdana;color:blue">Switzerland at the EPFL</A>
 							</UL>
diff --git a/web/webqtl/base/template.py b/web/webqtl/base/template.py
index 85bd86df..85bd86df 100644..100755
--- a/web/webqtl/base/template.py
+++ b/web/webqtl/base/template.py
diff --git a/web/webqtl/base/templatePage.py b/web/webqtl/base/templatePage.py
index 4dece24a..4dece24a 100644..100755
--- a/web/webqtl/base/templatePage.py
+++ b/web/webqtl/base/templatePage.py
diff --git a/web/webqtl/base/webqtlConfigLocal.py b/web/webqtl/base/webqtlConfigLocal.py
index 0c95fe7b..499dfba8 100755
--- a/web/webqtl/base/webqtlConfigLocal.py
+++ b/web/webqtl/base/webqtlConfigLocal.py
@@ -3,17 +3,15 @@
 #########################################
 
 MYSQL_SERVER = 'localhost'
-DB_NAME = 'db_webqtl'
+DB_NAME = 'db_webqtl_leiyan'
 DB_USER = 'webqtlupd'
 DB_PASSWD = 'webqtl'
 
 MYSQL_UPDSERVER = 'localhost'
-DB_UPDNAME = 'db_webqtl'
+DB_UPDNAME = 'db_webqtl_leiyan'
 DB_UPDUSER = 'webqtlupd'
 DB_UPDPASSWD = 'webqtl'
 
-GNROOT = '/gnshare/gn/'
+GNROOT = '/home/leiyan/gn/'
 PythonPath = '/usr/bin/python'
 PIDDLE_FONT_PATH = '/usr/lib/python2.4/site-packages/piddle/truetypefonts/'
-
-TEXTUI=0   # This is to protect GN production server. If set to 0, no text UI is allowed.
diff --git a/web/webqtl/intervalMapping/IntervalMappingPage.py b/web/webqtl/intervalMapping/IntervalMappingPage.py
index 4bdf45ab..4bdf45ab 100644..100755
--- a/web/webqtl/intervalMapping/IntervalMappingPage.py
+++ b/web/webqtl/intervalMapping/IntervalMappingPage.py
diff --git a/web/webqtl/pubmedsearch/PubmedSearch.py b/web/webqtl/pubmedsearch/PubmedSearch.py
deleted file mode 100755
index 8e7b0725..00000000
--- a/web/webqtl/pubmedsearch/PubmedSearch.py
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright (C) University of Tennessee Health Science Center, Memphis, TN.
-#
-# This program is free software: you can redistribute it and/or modify it
-# under the terms of the GNU Affero General Public License
-# as published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the GNU Affero General Public License for more details.
-#
-# This program is available from Source Forge: at GeneNetwork Project
-# (sourceforge.net/projects/genenetwork/).
-#
-# Contact Drs. Robert W. Williams and Xiaodong Zhou (2010)
-# at rwilliams@uthsc.edu and xzhou15@uthsc.edu
-#
-#
-#
-# This module is used by GeneNetwork project (www.genenetwork.org)
-#
-# Created by GeneNetwork Core Team 2010/08/10
-#
-# Last updated by GeneNetwork Core Team 2010/10/20
-
-#geneWikiPage.py
-#
-#This one's pretty self-evident from the title. If you use the GeneWiki module, this is what's behind it. -KA
-
-# Xiaodong changed the dependancy structure
-
-from htmlgen import HTMLgen2 as HT
-import os
-import string
-
-from base.templatePage import templatePage
-from base import webqtlConfig
-from utility import webqtlUtil
-
-#########################################
-#########################################
-
-class PubmedSearch(templatePage):
-
-	def __init__(self, fd):
-		templatePage.__init__(self, fd)
-		self.content_type = 'text/html'
-		Heading = HT.Paragraph("pubmed search", Class="title")
-		Intro = HT.Blockquote("This is a description.")	
-		form = HT.Form(cgi=os.path.join(webqtlConfig.CGIDIR, webqtlConfig.SCRIPTFILE), name='pubmedsearch', submit=HT.Input(type='hidden'))
-		form.append(HT.Input(type="text", size = 45, maxlength=100, name="symbol"))	
-		form.append(HT.Input(type="hidden", name="FormID", value="pubmedsearchre"))
-		form.append(HT.Input(type="submit", name="submit", value="submit", Class="button"))
-		TD_LR = HT.TD(height=200,width="100%",bgColor='#eeeeee',valign="top")
-		TD_LR.append(Heading, Intro, HT.Center(form))
-		self.dict['body'] = str(TD_LR)
-		self.dict['title'] = "Pubmed Search"
\ No newline at end of file
diff --git a/web/webqtl/pubmedsearch/PubmedSearchRe.py b/web/webqtl/pubmedsearch/PubmedSearchRe.py
deleted file mode 100755
index fcbfd941..00000000
--- a/web/webqtl/pubmedsearch/PubmedSearchRe.py
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright (C) University of Tennessee Health Science Center, Memphis, TN.
-#
-# This program is free software: you can redistribute it and/or modify it
-# under the terms of the GNU Affero General Public License
-# as published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the GNU Affero General Public License for more details.
-#
-# This program is available from Source Forge: at GeneNetwork Project
-# (sourceforge.net/projects/genenetwork/).
-#
-# Contact Drs. Robert W. Williams and Xiaodong Zhou (2010)
-# at rwilliams@uthsc.edu and xzhou15@uthsc.edu
-#
-#
-#
-# This module is used by GeneNetwork project (www.genenetwork.org)
-#
-# Created by GeneNetwork Core Team 2010/08/10
-#
-# Last updated by GeneNetwork Core Team 2010/10/20
-
-#geneWikiPage.py
-#
-#This one's pretty self-evident from the title. If you use the GeneWiki module, this is what's behind it. -KA
-
-# Xiaodong changed the dependancy structure
-
-from htmlgen import HTMLgen2 as HT
-import os
-import string
-
-from base.templatePage import templatePage
-from base import webqtlConfig
-from utility import webqtlUtil
-
-#########################################
-#########################################
-
-class PubmedSearchRe(templatePage):
-
-	def __init__(self, fd):
-		templatePage.__init__(self, fd)
-		self.content_type = 'text/html'
-		Heading = HT.Paragraph("pubmed search", Class="title")
-		Intro = HT.Blockquote("This is a description.")	
-		
-		table = HT.TableLite(border=0, cellpadding=0, cellspacing=0)
-		
-		TD_LR = HT.TD(height=200,width="100%",bgColor='#eeeeee',valign="top")
-		TD_LR.append(Heading, Intro, HT.Center(form))
-		self.dict['body'] = str(TD_LR)
-		self.dict['title'] = "Pubmed Search"
\ No newline at end of file
diff --git a/web/webqtl/pubmedsearch/__init__.py b/web/webqtl/pubmedsearch/__init__.py
deleted file mode 100755
index e69de29b..00000000
--- a/web/webqtl/pubmedsearch/__init__.py
+++ /dev/null
diff --git a/web/webqtl/search/PubmedSearch.py b/web/webqtl/search/PubmedSearch.py
new file mode 100755
index 00000000..17c1d1ec
--- /dev/null
+++ b/web/webqtl/search/PubmedSearch.py
@@ -0,0 +1,94 @@
+# Copyright (C) University of Tennessee Health Science Center, Memphis, TN.
+#
+# This program is free software: you can redistribute it and/or modify it
+# under the terms of the GNU Affero General Public License
+# as published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+# See the GNU Affero General Public License for more details.
+#
+# This program is available from Source Forge: at GeneNetwork Project
+# (sourceforge.net/projects/genenetwork/).
+#
+# Contact Drs. Robert W. Williams and Xiaodong Zhou (2010)
+# at rwilliams@uthsc.edu and xzhou15@uthsc.edu
+#
+#
+#
+# This module is used by GeneNetwork project (www.genenetwork.org)
+#
+# Created by GeneNetwork Core Team 2010/08/10
+#
+# Last updated by GeneNetwork Core Team 2010/10/20
+
+import re
+
+from dbFunction import webqtlDatabaseFunction
+
+import logging
+logging.basicConfig(filename="/tmp/gn_log_leiyan", level=logging.INFO)
+_log = logging.getLogger("PubmedSearch")
+
+#########################################
+# name=megan inst=washington
+#########################################
+
+class PubmedSearch:
+
+		def __init__(self, s, ProbeSetFreezeId):
+				cursor = webqtlDatabaseFunction.getCursor()
+				if (not cursor):
+						return
+				self.olds = s
+				self.news = s
+				sql = "SELECT ProbeSet.Symbol FROM pubmedsearch,ProbeSet,ProbeSetXRef WHERE "
+				#
+				pattern_name = re.compile('\s*name\s*[:=]((\s*\(.+?\)\s*)|(\s*\S+\s*))', re.I)
+				search_name = pattern_name.search(self.news)
+				if search_name:
+					self.news = self.news.replace(search_name.group(), ' ')
+					keywords = search_name.group(1)
+					keywords = keywords.strip()
+					keywords = keywords.strip('(')
+					keywords = keywords.strip(')')
+					keywords = keywords.strip()
+					keywords = keywords.split()
+					for keyword in keywords:
+						sql += "(MATCH (pubmedsearch.authorfullname,authorshortname) AGAINST ('%s' IN BOOLEAN MODE)) AND " % keyword
+				_log.info("news_1: "+self.news)
+				#
+				pattern_inst = re.compile('\s*inst\s*[:=]((\s*\(.+?\)\s*)|(\s*\S+\s*))', re.I)
+				search_inst = pattern_inst.search(self.news)
+				if search_inst:
+					self.news = self.news.replace(search_inst.group(), ' ')
+					keywords = search_inst.group(1)
+					keywords = keywords.strip()
+					keywords = keywords.strip('(')
+					keywords = keywords.strip(')')
+					keywords = keywords.strip()
+					keywords = keywords.split()
+					for keyword in keywords:
+						sql += "(MATCH (pubmedsearch.institute) AGAINST ('%s' IN BOOLEAN MODE)) AND " % keyword
+				_log.info("news_2: "+self.news)
+				#
+				if search_name or search_inst:
+					sql += "pubmedsearch.geneid=ProbeSet.GeneId AND "
+					sql += "ProbeSet.Id=ProbeSetXRef.ProbeSetId AND "
+					sql += "ProbeSetXRef.ProbeSetFreezeId=%d " % ProbeSetFreezeId
+					sql += "GROUP BY ProbeSet.Symbol;"
+					_log.info("sql: "+sql)
+					cursor.execute(sql)
+					symbols1 = cursor.fetchall()
+					symbols2 = ''
+					for symbol in symbols1:
+						symbols2 += (symbol[0]+' ')
+					self.news = symbols2 + self.news
+					_log.info("symbols2: "+symbols2)
+				else:
+					self.news = self.olds
+
+		def getNewS(self):
+				return self.news
\ No newline at end of file
diff --git a/web/webqtl/search/SearchResultPage.py b/web/webqtl/search/SearchResultPage.py
index 14d10731..029a54c4 100644..100755
--- a/web/webqtl/search/SearchResultPage.py
+++ b/web/webqtl/search/SearchResultPage.py
@@ -20,8 +20,10 @@ from base.templatePage import templatePage
 from utility import webqtlUtil
 from dbFunction import webqtlDatabaseFunction
 
+import PubmedSearch
+
 import logging
-logging.basicConfig(filename="/tmp/gn_log", level=logging.INFO)
+logging.basicConfig(filename="/tmp/gn_log_leiyan", level=logging.INFO)
 _log = logging.getLogger("search")
 
 class SearchResultPage(templatePage):
@@ -155,7 +157,16 @@ class SearchResultPage(templatePage):
 			geneIdListQuery = " geneId=%s" % string.join(string.split(geneIdListQuery), "-")
 
 		self.ANDkeyword = fd.formdata.getfirst('ANDkeyword', "")
+		_log.info("self.ANDkeyword[1]: " + self.ANDkeyword)
+		pubmedSearchObject = PubmedSearch.PubmedSearch(self.ANDkeyword, self.database[0].id)
+		self.ANDkeyword = pubmedSearchObject.getNewS()
+		_log.info("self.ANDkeyword[2]: " + self.ANDkeyword)
+
 		self.ORkeyword = fd.formdata.getfirst('ORkeyword', "")
+		_log.info("self.ORkeyword[1]: " + self.ORkeyword)
+		pubmedSearchObject = PubmedSearch.PubmedSearch(self.ORkeyword, self.database[0].id)
+		self.ORkeyword = pubmedSearchObject.getNewS()
+		_log.info("self.ORkeyword[2]: "+self.ORkeyword)
 
 		self.ORkeyword += geneIdListQuery
 
@@ -485,7 +496,7 @@ class SearchResultPage(templatePage):
 		self.results = []
 		for item in searchCountQuery:
 		    start_time = datetime.datetime.now()
-		    _log.info("Executing query: %s"%(item))
+		    _log.info("111 Executing query: %s"%(item))
 		    self.cursor.execute(item)
 		    allResults.append(self.cursor.fetchall())
 		    end_time = datetime.datetime.now()
@@ -497,6 +508,7 @@ class SearchResultPage(templatePage):
 		#searchCountQuery retrieve all the results, for counting use only
 		if searchCountQuery != searchQuery:
 			for item in searchQuery:
+				_log.info("222 Executing query: %s"%(item))
 				self.cursor.execute(item)
 				self.results.append(self.cursor.fetchall())
 		else:
diff --git a/web/webqtl/search/pubmedsearch.py b/web/webqtl/search/pubmedsearch.py
deleted file mode 100755
index d0d18ff5..00000000
--- a/web/webqtl/search/pubmedsearch.py
+++ /dev/null
@@ -1,12 +0,0 @@
-import sys
-import os
-import MySQLdb
-import time
-
-db='db_webqtl_leiyan'
-author="megan memphis"
-
-con = MySQLdb.Connect(db=db,user='webqtlupd',passwd='webqtl', host="localhost")
-cursor = con.cursor()
-cursor.execute('select PhenotypeId, Locus, DataId, Phenotype.Post_publication_description from PublishXRef, Phenotype where PublishXRef.PhenotypeId = Phenotype.Id and InbredSetId=%s'%InbredSetId)
-PublishXRefInfos = cursor.fetchall()
diff --git a/web/webqtl/showTrait/ShowTraitPage.py b/web/webqtl/showTrait/ShowTraitPage.py
index 82511228..82511228 100755..100644
--- a/web/webqtl/showTrait/ShowTraitPage.py
+++ b/web/webqtl/showTrait/ShowTraitPage.py