from __future__ import absolute_import, division, print_function import flask from wqflask import app from flask import render_template, request from wqflask import search_results from wqflask.show_trait import show_trait_page from wqflask.dataSharing import SharingInfo, SharingInfoPage from base import webqtlFormData from pprint import pformat as pf print("latest blue") @app.route("/") def index_page(): return render_template("index_page.html") @app.route("/data_sharing") def data_sharing(): print("In data_sharing") fd = webqtlFormData.webqtlFormData(request.args) print("1Have fd") sharingInfoObject = SharingInfo.SharingInfo(request.args['GN_AccessionId'], None) info, htmlfilelist = sharingInfoObject.getBody(infoupdate="") print("type(htmlfilelist):", type(htmlfilelist)) htmlfilelist = htmlfilelist.encode("utf-8") #template_vars = SharingInfo.SharingInfo(request.args['GN_AccessionId'], None) print("1 Made it to rendering") return render_template("data_sharing.html", info=info, htmlfilelist=htmlfilelist) @app.route("/search") def search(): if 'info_database' in request.args: print("Going to sharing_info_page") template_vars = sharing_info_page() if template_vars.redirect_url: print("Going to redirect") return flask.redirect(template_vars.redirect_url) else: return render_template("data_sharing.html", **template_vars.__dict__) else: the_search = search_results.SearchResultPage(request.args) return render_template("search_result_page.html", **the_search.__dict__) @app.route("/showDatabaseBXD") def showDatabaseBXD(): # Here it's currently too complicated not to use an fd that is a webqtlFormData fd = webqtlFormData.webqtlFormData(request.args) template_vars = show_trait_page.ShowTraitPage(fd) print("showDatabaseBXD template_vars:", pf(template_vars.__dict__)) return render_template("trait_data_and_analysis.html", **template_vars.__dict__) # Todo: Can we simplify this? -Sam def sharing_info_page(): print("In sharing_info_page") fd = webqtlFormData.webqtlFormData(request.args) print("2Have fd") template_vars = SharingInfoPage.SharingInfoPage(fd) print("2 Made it to rendering") return template_vars