aboutsummaryrefslogtreecommitdiff
path: root/web/webqtl/main.py
diff options
context:
space:
mode:
Diffstat (limited to 'web/webqtl/main.py')
-rw-r--r--web/webqtl/main.py699
1 files changed, 0 insertions, 699 deletions
diff --git a/web/webqtl/main.py b/web/webqtl/main.py
deleted file mode 100644
index f37fae01..00000000
--- a/web/webqtl/main.py
+++ /dev/null
@@ -1,699 +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
-
-
-from mod_python import apache, util, Session, Cookie
-import time
-import string
-
-from base.webqtlFormData import webqtlFormData
-
-import logging
-logging.basicConfig(filename="/tmp/gn_log", level=logging.INFO)
-_log = logging.getLogger("main")
-
-
-
-def handler(req):
- _log.info("Handling a request")
- req.content_type = 'text/html'
-
- formdata = util.FieldStorage(req)
-
- formID = formdata.getfirst('FormID')
- sid = formdata.getfirst('sid')
- cmdID = formdata.getfirst('cmd')
- page = None
-
- #XZ: this statement must be put into handler function
- _log.info("Loading session")
- mod_python_session = Session.Session(req, timeout=864000, lock=0)
- mod_python_session.load()
- _log.info("Done loading session")
-
- if sid:
- from cmdLine import procPage
- reload(procPage)
- req.content_type = 'text/html'
- procPage.procPage(sid, req)
- else:
- fd = webqtlFormData(req=req, mod_python_session=mod_python_session, FieldStorage_formdata=formdata)
-
- if formID:
- _log.info("Dispatching on %s, %s"%(formID, fd.formID))
- #XZ: Special case. Pay attention to parameters! We can NOT pass 'fd'!
- if fd.formID == 'uploadFile':
- from base import cookieData
- from misc import uploadFilePage
- reload(uploadFilePage)
- reload(cookieData)
- cookies = cookieData.cookieData(Cookie.get_cookies(req)) #new module
- req.content_type = 'text/html'
- page = uploadFilePage.uploadFilePage(fd, formdata, cookies)
-
- #search
- elif fd.formID in ('searchResult','asearchResult'):
- from search import SearchResultPage
- reload(SearchResultPage)
- req.content_type = 'text/html'
- page = SearchResultPage.SearchResultPage(fd)
-
- #showTrait
- elif fd.formID == 'showDatabase':
- from showTrait import ShowTraitPage
- reload(ShowTraitPage)
- req.content_type = 'text/html'
- page = ShowTraitPage.ShowTraitPage(fd)
- elif fd.formID == 'showBest':
- from showTrait import ShowBestTrait
- reload(ShowBestTrait)
- req.content_type = 'text/html'
- page = ShowBestTrait.ShowBestTrait(fd)
- elif fd.formID == 'showProbeInfo':
- from showTrait import ShowProbeInfoPage
- reload(ShowProbeInfoPage)
- page = ShowProbeInfoPage.ShowProbeInfoPage(fd)
- req.content_type = 'text/html'
- elif fd.formID in ('crossChoice', 'varianceChoice'):
- if not fd.submitID:
- req.content_type = 'text/html'
- req.write('check your page')
- elif fd.submitID == 'sample':
- from showTrait import testTraitPage # new module
- reload(testTraitPage)
- page = testTraitPage.testTraitPage()
- req.content_type = 'text/html'
- else:
- from showTrait import DataEditingPage
- reload(DataEditingPage)
- req.content_type = 'text/html'
- page = DataEditingPage.DataEditingPage(fd)
-
- #from Trait Data and Analysis form page
- elif fd.formID == 'dataEditing':
- if not fd.submitID:
- req.content_type = 'text/html'
- req.write('check your page')
- elif fd.submitID == 'basicStatistics': #Updated Basic Statistics page (pop-up when user hits "update" button in DataEditingPage.py
- from basicStatistics import updatedBasicStatisticsPage
- reload(updatedBasicStatisticsPage)
- req.content_type = 'text/html'
- page = updatedBasicStatisticsPage.updatedBasicStatisticsPage(fd)
- elif fd.submitID == 'updateRecord':
- from updateTrait import DataUpdatePage
- reload(DataUpdatePage)
- req.content_type = 'text/html'
- page=DataUpdatePage.DataUpdatePage(fd)
- elif fd.submitID == 'addRecord':
- from collection import AddUserInputToSelectionPage
- reload(AddUserInputToSelectionPage)
- page = AddUserInputToSelectionPage.AddUserInputToSelectionPage(fd)
- req.content_type = 'text/html'
- elif fd.submitID == 'addPublish':
- from submitTrait import AddUserInputToPublishPage
- reload(AddUserInputToPublishPage)
- req.content_type = 'text/html'
- page = AddUserInputToPublishPage.AddUserInputToPublishPage(fd)
- elif fd.submitID == 'correlation':
- from cmdLine import cmdCorrelationPage
- reload(cmdCorrelationPage)
- page = cmdCorrelationPage.cmdCorrelationPage(fd)
- elif fd.submitID == 'intervalMap':
- from cmdLine import cmdIntervalMappingPage
- reload(cmdIntervalMappingPage)
- page = cmdIntervalMappingPage.cmdIntervalMappingPage(fd)
- elif fd.submitID == 'markerRegression':
- from cmdLine import cmdMarkerRegressionPage
- reload(cmdMarkerRegressionPage)
- req.content_type = 'text/html'
- page = cmdMarkerRegressionPage.cmdMarkerRegressionPage(fd)
-
- elif fd.submitID == 'directPlot':
- from cmdLine import cmdDirectPlotPage
- reload(cmdDirectPlotPage)
- req.content_type = 'text/html'
- page = cmdDirectPlotPage.cmdDirectPlotPage(fd)
- elif fd.submitID == 'exportData':
- from showTrait import exportPage
- reload(exportPage)
- req.content_type = 'text/html'
- page = exportPage.ExportPage(fd)
- elif fd.submitID == 'showAll':
- from cmdLine import cmdShowAllPage
- reload(cmdShowAllPage)
- page = cmdShowAllPage.cmdShowAllPage(fd)
- elif fd.submitID == 'showAll2':
- from cmdLine import cmdShowAllPage2
- reload(cmdShowAllPage2)
- page=cmdShowAllPage2.cmdShowAllPage2(fd)
- else:
- pass
-
- #from marker regression result page
- elif fd.formID == 'secondRegression':
- if not fd.submitID:
- req.content_type = 'text/html'
- req.write('check your page')
- elif fd.submitID == 'compositeRegression':
- req.content_type = 'text/html'
- from markerRegression import CompositeMarkerRegressionPage
- reload(CompositeMarkerRegressionPage)
- page = CompositeMarkerRegressionPage.CompositeMarkerRegressionPage(fd)
- elif fd.submitID == 'intervalMap':
- from intervalMapping import IntervalMappingPage
- reload(IntervalMappingPage)
- page = IntervalMappingPage.IntervalMappingPage(fd)
- else:
- pass
-
- #cmdLine
- elif fd.formID == 'showIntMap':
- from cmdLine import cmdIntervalMappingPage
- reload(cmdIntervalMappingPage)
- page = cmdIntervalMappingPage.cmdIntervalMappingPage(fd)
- elif fd.formID == 'heatmap':
- from cmdLine import cmdHeatmapPage
- reload(cmdHeatmapPage)
- page = cmdHeatmapPage.cmdHeatmapPage(fd)
- elif fd.formID == 'networkGraph':
- from cmdLine import cmdNetworkGraphPage
- reload(cmdNetworkGraphPage)
- page = cmdNetworkGraphPage.cmdNetworkGraphPage(fd)
- elif fd.formID == 'compCorr2':
- from cmdLine import cmdCompCorrPage
- reload(cmdCompCorrPage)
- page = cmdCompCorrPage.cmdCompCorrPage(fd)
- elif fd.formID == 'calPartialCorrDB':
- from cmdLine import cmdPartialCorrelationPage
- reload(cmdPartialCorrelationPage)
- page = cmdPartialCorrelationPage.cmdPartialCorrelationPage(fd)
-
- #pairScan
- elif fd.formID == 'showCategoryGraph':
- from pairScan import CategoryGraphPage
- reload(CategoryGraphPage)
- req.content_type = 'text/html'
- page = CategoryGraphPage.CategoryGraphPage(fd)
- elif fd.formID == 'pairPlot':
- from pairScan import PairPlotPage
- reload(PairPlotPage)
- req.content_type = 'text/html'
- page = PairPlotPage.PairPlotPage(fd)
-
- #compareCorrelates
- elif fd.formID == 'compCorr':
- from compareCorrelates import MultipleCorrelationPage
- reload(MultipleCorrelationPage)
- page = MultipleCorrelationPage.MultipleCorrelationPage(fd)
-
- #correlationMatrix
- elif fd.formID == 'corMatrix':
- from correlationMatrix import CorrelationMatrixPage
- reload(CorrelationMatrixPage)
- req.content_type = 'text/html'
- page = CorrelationMatrixPage.CorrelationMatrixPage(fd)
- elif fd.formID=='tissueCorrelation' or fd.formID=='dispMultiSymbolsResult':
- from correlationMatrix import TissueCorrelationPage
- reload(TissueCorrelationPage)
- page = TissueCorrelationPage.TissueCorrelationPage(fd)
- elif fd.formID =='dispTissueCorrelationResult':
- from cmdLine import cmdTissueCorrelationResultPage
- reload (cmdTissueCorrelationResultPage)
- page = cmdTissueCorrelationResultPage.cmdTissueCorrelationResultPage(fd)
- elif fd.formID=='tissueAbbreviation':
- from correlationMatrix import TissueAbbreviationPage
- reload(TissueAbbreviationPage)
- page = TissueAbbreviationPage.TissueAbbreviationPage(fd)
-
- #collection
- elif fd.formID == 'dispSelection':
- from collection import DisplaySelectionPage
- reload(DisplaySelectionPage)
- page = DisplaySelectionPage.DisplaySelectionPage(fd)
- req.content_type = 'text/html'
- elif fd.formID == 'addToSelection':
- from collection import AddToSelectionPage
- reload(AddToSelectionPage)
- page = AddToSelectionPage.AddToSelectionPage(fd)
- req.content_type = 'text/html'
- elif fd.formID == 'removeSelection':
- from collection import RemoveSelectionPage
- reload(RemoveSelectionPage)
- page = RemoveSelectionPage.RemoveSelectionPage(fd)
- req.content_type = 'text/html'
- elif fd.formID == 'exportSelect':
- from collection import ExportSelectionPage
- reload(ExportSelectionPage)
- page = ExportSelectionPage.ExportSelectionPage(fd)
- elif fd.formID == 'importSelect':
- from collection import ImportSelectionPage
- reload(ImportSelectionPage)
- page = ImportSelectionPage.ImportSelectionPage(fd)
- req.content_type = 'text/html'
- elif fd.formID == 'exportSelectionDetailInfo':
- from collection import ExportSelectionDetailInfoPage
- reload(ExportSelectionDetailInfoPage)
- page = ExportSelectionDetailInfoPage.ExportSelectionDetailInfoPage(fd)
- elif fd.formID == 'batSubmitResult':
- from collection import BatchSubmitSelectionPage
- reload(BatchSubmitSelectionPage)
- page = BatchSubmitSelectionPage.BatchSubmitSelectionPage(fd)
- req.content_type = 'text/html'
-
- #user
- elif fd.formID == 'userLogin':
- from user import userLogin
- reload(userLogin)
- page = userLogin.userLogin(fd)
- req.content_type = 'text/html'
- elif fd.formID == 'userLogoff':
- from user import userLogoff
- reload(userLogoff)
- page = userLogoff.userLogoff(fd)
- req.content_type = 'text/html'
- elif fd.formID == 'userPasswd':
- from user import userPasswd
- reload(userPasswd)
- page = userPasswd.userPasswd(fd)
- req.content_type = 'text/html'
-
- #submitTrait
- elif fd.formID == 'pre_dataEditing':
- from submitTrait import VarianceChoicePage
- reload(VarianceChoicePage)
- page = VarianceChoicePage.VarianceChoicePage(fd)
- req.content_type = 'text/html'
- elif fd.formID == 'batSubmit':
- from submitTrait import BatchSubmitPage
- reload(BatchSubmitPage)
- req.content_type = 'text/html'
- page = BatchSubmitPage.BatchSubmitPage(fd)
-
-
- #misc
- elif fd.formID == 'editHtml':
- from misc import editHtmlPage
- reload(editHtmlPage)
- req.content_type = 'text/html'
- page = editHtmlPage.editHtmlPage(fd)
-
- #genomeGraph
- elif fd.formID == 'transciptMapping':
- from genomeGraph import cmdGenomeScanPage
- reload(cmdGenomeScanPage)
- req.content_type = 'text/html'
- page = cmdGenomeScanPage.cmdGenomeScanPage(fd)
- elif fd.formID == 'genAllDbResult':
- from genomeGraph import genAllDbResultPage
- reload(genAllDbResultPage)
- page = genAllDbResultPage.genAllDbResultPage(fd)
-
- #geneWiki
- elif fd.formID == 'geneWiki':
- from geneWiki import AddGeneRIFPage
- reload(AddGeneRIFPage)
- page = AddGeneRIFPage.AddGeneRIFPage(fd)
-
- #externalResource
- elif fd.formID == 'GOTree':
- from externalResource import GoTreePage
- reload(GoTreePage)
- req.content_type = 'text/html'
- page = GoTreePage.GoTreePage(fd)
- elif fd.formID == 'ODE':
- from externalResource import ODEPage
- reload(ODEPage)
- req.content_type = 'text/html'
- page = ODEPage.ODEPage(fd)
- elif fd.formID == 'GCAT':
- from externalResource import GCATPage
- reload(GCATPage)
- req.content_type = 'text/html'
- page = GCATPage.GCATPage(fd)
-
- #management
- elif fd.formID == 'managerMain':
- from management import managerMainPage
- reload(managerMainPage)
- req.content_type = 'text/html'
- page = managerMainPage.managerMainPage(fd)
- elif fd.formID == 'createUserAccount':
- from management import createUserAccountPage
- reload(createUserAccountPage)
- req.content_type = 'text/html'
- page = createUserAccountPage.createUserAccountPage(fd)
- elif fd.formID == 'assignUserToDataset':
- from management import assignUserToDatasetPage
- reload(assignUserToDatasetPage)
- req.content_type = 'text/html'
- page = assignUserToDatasetPage.assignUserToDatasetPage(fd)
- elif fd.formID == 'deletePhenotypeTrait':
- from management import deletePhenotypeTraitPage
- reload(deletePhenotypeTraitPage)
- req.content_type = 'text/html'
- page = deletePhenotypeTraitPage.deletePhenotypeTraitPage(fd)
- elif fd.formID == 'exportPhenotypeDataset':
- from management import exportPhenotypeDatasetPage
- reload(exportPhenotypeDatasetPage)
- req.content_type = 'text/html'
- page = exportPhenotypeDatasetPage.exportPhenotypeDatasetPage(fd)
- elif fd.formID == 'editHeaderFooter':
- from management import editHeaderFooter
- reload(editHeaderFooter)
- req.content_type = 'text/html'
- page = editHeaderFooter.editHeaderFooter(fd)
- elif fd.formID == 'updGeno':
- from management import GenoUpdate
- reload(GenoUpdate)
- req.content_type = 'text/html'
- page = GenoUpdate.GenoUpdate(fd)
-
- #correlation
- elif fd.formID == 'showCorrelationPlot':
- from correlation import PlotCorrelationPage
- reload(PlotCorrelationPage)
- req.content_type = 'text/html'
- page = PlotCorrelationPage.PlotCorrelationPage(fd)
- elif fd.formID == 'partialCorrInput':
- from correlation import PartialCorrInputPage
- reload(PartialCorrInputPage)
- req.content_type = 'text/html'
- page = PartialCorrInputPage.PartialCorrInputPage(fd)
- elif fd.formID == 'calPartialCorrTrait':
- from correlation import PartialCorrTraitPage
- reload(PartialCorrTraitPage)
- req.content_type = 'text/html'
- page = PartialCorrTraitPage.PartialCorrTraitPage(fd)
-
- #elif fd.formID == 'BNInput':
- # from BN import BNInputPage
- # reload(BNInputPage)
- # req.content_type = 'text/html'
- # page = BNInputPage.BNInputPage(fd)
-
- elif fd.formID == 'updateRecord':
- from updateTrait import DataUpdatePage
- reload(DataUpdatePage)
- req.content_type = 'text/html'
- page=DataUpdatePage.DataUpdatePage(fd)
-
- #schema
- elif fd.formID == 'schemaShowPage':
- from schema import ShowSchemaPage
- reload(ShowSchemaPage)
- req.content_type = 'text/html'
- page = ShowSchemaPage.ShowSchemaPage(fd)
- elif fd.formID == 'schemaShowComment':
- from schema import ShowCommentPage
- reload(ShowCommentPage)
- req.content_type = 'text/html'
- page = ShowCommentPage.ShowCommentPage(fd)
- elif fd.formID == 'schemaUpdateComment':
- from schema import UpdateCommentPage
- reload(UpdateCommentPage)
- req.content_type = 'text/html'
- page = UpdateCommentPage.UpdateCommentPage(fd)
-
- #snpBrowser
- elif fd.formID == 'snpBrowser':
- req.content_type = 'text/html'
- snpId = fd.formdata.getfirst('snpId')
- if snpId:
- from snpBrowser import snpDetails
- reload(snpDetails)
- page = snpDetails.snpDetails(fd, snpId)
- else:
- from snpBrowser import snpBrowserPage
- reload(snpBrowserPage)
- page = snpBrowserPage.snpBrowserPage(fd)
- elif fd.formID =='SnpBrowserResultPage':
- from cmdLine import cmdSnpBrowserResultPage
- reload (cmdSnpBrowserResultPage)
- page = cmdSnpBrowserResultPage.cmdSnpBrowserResultPage(fd)
-
- #intervalAnalyst
- elif fd.formID == 'intervalAnalyst':
- from intervalAnalyst import IntervalAnalystPage
- reload(IntervalAnalystPage)
- req.content_type = 'text/html'
- page = IntervalAnalystPage.IntervalAnalystPage(fd)
-
- #AJAX_table
- elif fd.formID == 'AJAX_table':
- from utility import AJAX_table
- reload(AJAX_table)
- req.content_type = 'text/html'
- req.write(AJAX_table.AJAX_table(fd).write())
-
- elif fd.formID == 'submitSingleTrait':
- from submitTrait import CrossChoicePage
- reload(CrossChoicePage)
- page = CrossChoicePage.CrossChoicePage(fd)
- req.content_type = 'text/html'
-
- elif fd.formID == 'sharing':
- from dataSharing import SharingPage
- reload(SharingPage)
- page = SharingPage.SharingPage(fd)
- req.content_type = 'text/html'
-
- elif fd.formID == 'sharinginfo':
- from dataSharing import SharingInfoPage
- reload(SharingInfoPage)
- page = SharingInfoPage.SharingInfoPage(fd)
- req.content_type = 'text/html'
-
- elif fd.formID == 'sharinginfoedit':
- from dataSharing import SharingInfoEditPage
- reload(SharingInfoEditPage)
- page = SharingInfoEditPage.SharingInfoEditPage(fd)
- req.content_type = 'text/html'
-
- elif fd.formID == 'sharinginfodelete':
- from dataSharing import SharingInfoDeletePage
- reload(SharingInfoDeletePage)
- page = SharingInfoDeletePage.SharingInfoDeletePage(fd)
- req.content_type = 'text/html'
-
- elif fd.formID == 'sharinginfoupdate':
- from dataSharing import SharingInfoUpdatePage
- reload(SharingInfoUpdatePage)
- page = SharingInfoUpdatePage.SharingInfoUpdatePage(fd)
- req.content_type = 'text/html'
-
- elif fd.formID == 'sharingListDataset':
- from dataSharing import SharingListDataSetPage
- reload(SharingListDataSetPage)
- page = SharingListDataSetPage.SharingListDataSetPage(fd)
- req.content_type = 'text/html'
-
- elif fd.formID == 'sharinginfoadd':
- from dataSharing import SharingInfoAddPage
- reload(SharingInfoAddPage)
- page = SharingInfoAddPage.SharingInfoAddPage(fd)
- req.content_type = 'text/html'
-
- elif fd.formID == 'annotation':
- from annotation import AnnotationPage
- reload(AnnotationPage)
- page = AnnotationPage.AnnotationPage(fd)
- req.content_type = 'text/html'
-
- elif fd.formID == 'qtlminer':
- from qtlminer import QTLminer
- reload(QTLminer)
- req.content_type = 'text/html'
- page = QTLminer.QTLminer(fd)
- elif fd.formID == 'qtlminerresult':
- from cmdLine import cmdQTLminerPage
- reload (cmdQTLminerPage)
- page = cmdQTLminerPage.cmdQTLminerPage(fd)
-
- else:
- from search import IndexPage
- reload(IndexPage)
- page = IndexPage.IndexPage(fd)
- req.content_type = 'text/html'
-
- #elif fd.formID == 'updGeno':
- # import GenoUpdate
- # reload(GenoUpdate)
- # req.content_type = 'text/html'
- # page=GenoUpdate.GenoUpdate(fd)
- #elif fd.formID == 'updStrain':
- # import StrainUpdate
- # reload(StrainUpdate)
- # req.content_type = 'text/html'
- # page=StrainUpdate.StrainUpdate(fd)
- #elif fd.formID == 'showTextResult':
- # import resultPage
- # reload(resultPage)
- # page = resultPage.ShowTextResult(fd)
- #elif fd.formID == 'showStrainInfo':
- # import dataPage
- # reload(dataPage)
- # req.content_type = 'text/html'
- # page = dataPage.ShowStrainInfoPage(fd)
- #elif fd.formID == 'showImage':
- # import dataPage
- # reload(dataPage)
- # req.content_type = 'text/html'
- # page = dataPage.ShowImagePage(fd)
- #XZ, 04/29/2009: There is one webpage gn/web/webqtl/blat.html and I have moved it to junk folder. This function is very old and I don't think it is being used.
- #elif fd.formID == 'BlatSearch':
- # import miscPage
- # reload(miscPage)
- # page = miscPage.ShowBlatResult(fd)
- #elif fd.formID == 'admin':
- # import adminPage
- # reload(adminPage)
- # req.content_type = 'text/html'
- # page = adminPage.adminModifyPage(fd)
-
- elif cmdID:
- #need to rewrite
- cmdID = string.lower(cmdID)
- if cmdID in ('get','trait','tra'):
- from textUI import cmdGet
- reload(cmdGet)
- req.content_type = 'text/plain'
- req.write(cmdGet.cmdGet(fd).write())
- elif cmdID in ('help', 'hlp'):
- from textUI import cmdHelp
- reload(cmdHelp)
- req.content_type = 'text/plain'
- req.write(cmdHelp.cmdHelp(fd).write())
- elif cmdID in ('correlation','cor','pea','pearson'):
- from textUI import cmdCorrelation
- reload(cmdCorrelation)
- req.content_type = 'text/plain'
- req.write(cmdCorrelation.cmdCorrelation(fd).write())
- elif cmdID in ('map','marker'):
- from textUI import cmdMap
- reload(cmdMap)
- req.content_type = 'text/plain'
- req.write(cmdMap.cmdMap(fd).write())
- elif cmdID in ('geno','gen','genotype'):
- from textUI import cmdGeno
- reload(cmdGeno)
- req.content_type = 'text/plain'
- req.write(cmdGeno.cmdGeno(fd).write())
- elif cmdID in ('interval','int'):
- from textUI import cmdInterval
- reload(cmdInterval)
- req.content_type = 'text/plain'
- req.write(cmdInterval.cmdInterval(fd).write())
- elif cmdID in ('show','shw'):
- from textUI import cmdShowEditing
- reload(cmdShowEditing)
- req.content_type = 'text/html'
- result = cmdShowEditing.cmdShowEditing(fd)
- page = result.page
- elif cmdID in ('search','sch'):
- req.content_type = 'text/plain'
- from textUI import cmdSearchGene
- reload(cmdSearchGene)
- result = cmdSearchGene.cmdSearchGene(fd)
- page = result.page
- req.write(result.text)
-
- #elif cmdID in ('tst','Test'):
- # req.write('Content-type: application/x-download')
- # req.write('Content-disposition: attachment; filename=my.txt\n')
- # genotype_file = GENODIR + 'AKXD.geno'
- # fp = open(genotype_file)
- # line = fp.read()
- # fp.close()
- # req.write(line)
- #XZ, 03/03/2009: This fuction must be initiated from URL
- #XZ: http://www.genenetwork.org/webqtl/WebQTL.py?cmd=birn&species=mouse&tissue=Hippocampus&ProbeId=1436869_at&Strain=BXD1
- #elif cmdID[0:4]=="birn":
- # req.content_type = 'text/plain'
- # import BIRN
- # reload(BIRN)
- # result = BIRN.birnSwitch(fd)
- # req.write(result.text)
- #elif cmdID in ('spear','spearman','spe'):
- # import cmdSpearman # new modules
- # reload(cmdSpearman)
- # req.content_type = 'text/plain'
- # req.write(cmdSpearman.cmdSpearman(fd).write())
- #elif cmdID in ('snp','track'):
- # import cmdSnpTrack # new modules
- # reload(cmdSnpTrack)
- # req.content_type = 'text/plain'
- # req.write(cmdSnpTrack.cmdSnpTrack(fd).write())
-
- else:
- req.content_type = 'text/html'
- req.write("###Wrong Command")
-
- ######## Create first page when called with no formID ########
-
- else:
- _log.info("Going to the search page")
- from search import IndexPage
- reload(IndexPage)
- page = IndexPage.IndexPage(fd)
- req.content_type = 'text/html'
-
- if page:
- #send Cookie first
- if page.cookie:
- for item in page.cookie:
- if (item):
- modcookie = Cookie.Cookie(item.name, item.value)
- modcookie.path = item.path
- if item.expire != None:
- modcookie.expires = time.time() + item.expire
- Cookie.add_cookie(req, modcookie)
-
- #save session
- if page.session_data_changed:
- for one_key in page.session_data_changed.keys():
- mod_python_session[one_key] = page.session_data_changed[one_key]
- mod_python_session.save()
-
-
- req.content_type= page.content_type
-
- #send attachment
- if page.redirection:
- util.redirect(req, page.redirection)
- elif page.content_disposition:
- req.headers_out["Content-Disposition"] = page.content_disposition
- req.write(page.attachment)
- elif page.debug: # for debug
- req.write(page.debug)
- #send regular content
- else:
- req.write(page.write())
- else:
- pass
-
- return apache.OK
-
-