diff options
-rw-r--r-- | wqflask/wqflask/ctl/gn3_ctl_analysis.py | 28 | ||||
-rw-r--r-- | wqflask/wqflask/templates/gn3_ctl_results.html | 14 |
2 files changed, 32 insertions, 10 deletions
diff --git a/wqflask/wqflask/ctl/gn3_ctl_analysis.py b/wqflask/wqflask/ctl/gn3_ctl_analysis.py index 67f76a30..7af0013f 100644 --- a/wqflask/wqflask/ctl/gn3_ctl_analysis.py +++ b/wqflask/wqflask/ctl/gn3_ctl_analysis.py @@ -96,18 +96,28 @@ def run_ctl(requestform): pheno_data = parse_phenotype_data( trait_db_list, dataset, geno_data["individuals"]) - response = requests.post(ctl_api, json={ + # todo refactor this chunk;;similar to wgcna check - "genoData": geno_data, - "phenoData": pheno_data, + try: - **form_data, + response = requests.post(ctl_api, json={ - }).json()["results"] + "genoData": geno_data, + "phenoData": pheno_data, + **form_data, - response["significance_data"] = process_significance_data( - response["significance_data"]) + }) + if response.status_code != 200: + return {"error": response.json()} + response = response.json()["results"] + response["significance_data"] = process_significance_data( + response["significance_data"]) + + return response + + except requests.exceptions.ConnectionError: + return { + "error": "A connection error to perform computation occurred" + } - # todo check for errors - return response diff --git a/wqflask/wqflask/templates/gn3_ctl_results.html b/wqflask/wqflask/templates/gn3_ctl_results.html index fedddc40..c42707f6 100644 --- a/wqflask/wqflask/templates/gn3_ctl_results.html +++ b/wqflask/wqflask/templates/gn3_ctl_results.html @@ -14,6 +14,14 @@ } </style> <div style="margin-top:10px"> + +{% if error %} + <div> + <h4 style="text-align:center;color:red">{{error}}</h4> + </div> + +{% else %} + <div> <div> <div style="text-align: center;"> <h3>CTL/QTL Plots for Individual Traits</h3> @@ -68,7 +76,11 @@ </div> </div> -<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script> +{% endif %} +</div> + +<!-- <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script> --> +<script src="{{ url_for('js', filename='bootstrap/js/bootstrap.min.js') }}" type="text/javascript"></script> <script language="javascript" type="text/javascript" src="{{ url_for('js', filename='DataTables/js/jquery.js') }}"></script> <script language="javascript" type="text/javascript" src="{{ url_for('js', filename='DataTables/js/jquery.dataTables.min.js') }}"></script> <script language="javascript" type="text/javascript" src="{{ url_for('js', filename='DataTablesExtensions/scroller/js/dataTables.scroller.min.js') }}"></script> |