diff --git a/www/cgi-bin/pampa/render_result.py b/www/cgi-bin/pampa/render_result.py index 0809f5982e59745f928ebc7865f3376f363dd714..695ac0d21e45ff454f264a65c1791158dde0cff6 100644 --- a/www/cgi-bin/pampa/render_result.py +++ b/www/cgi-bin/pampa/render_result.py @@ -143,7 +143,7 @@ def assignments_output(run_id, taxo_used, taxo_info, job_name=""): return html -def write_main_page(run_id, taxo_used, taxo_info, job_name=None): +def write_main_page(run_id, taxo_used, taxo_info, no_assignments, job_name=None): """Write a HTML page. The result page shown first when the PAMPA analysis is done.""" html = "" @@ -178,6 +178,9 @@ def write_main_page(run_id, taxo_used, taxo_info, job_name=None): html += (assignments_output(run_id, taxo_used, taxo_info, job_name=job_name)) html += ('<br>') + if no_assignments: + html += '<h4><font color="red">No assignments found</font></h4>' + # Display assignment thumbnails #html += ("<iframe src='thumbnails.php' width='100%' height='360'></iframe>") #html += ('<br/>') @@ -213,6 +216,22 @@ def gen_trees(run_id, taxo_custom=False): gen_sub_tree(common.RESULT_DIR, run_id, assign.replace(" ", "_"), assignment, "#0000FF", url_json=url_json) +def write_no_results_page(run_id, job_name=None): + """Write a HTML page. The result page shown first when the PAMPA analysis is done.""" + html = "" + + # Insert HTML header and page head + html += (open(f"{common.HTML_PATH}/header.php", "r").read()) + html += '<div class="frametitle"><h1 id="title">Pampa</h1></div><div id="center_sup"><div class="theme-border" style="display:none"></div><div id="link_home" style="display:inline-block"><a href="/" class="text_onglet"><img src="/Style/icon/home_w.png" alt="home_general"/></a></div><div class="tabs" id="menu_central" style="display:inline-block">' + html += open(f"{common.HTML_PATH}/menu_central.txt", 'r').read() + html += '</div></div><div id="main"><div id="center">' + + html += (f'<h2>Results for job {run_id}{f" ({job_name})" if job_name else ""}</h2>') + + html += '<h4><font color="red">No results</font></h4>' + open(common.RESULT_DIR + run_id + "/results.php", "w").write(html) + + # Main program def main(): # Ce script est lancé avec un paramètre : le nom d'un fichier json @@ -246,7 +265,13 @@ def main(): else: taxo_file = params["taxo_file"] assignments = json.load(open(common.RESULT_DIR+"/"+ run_id + "/out_" + run_id +".json")) - taxo_used = (assignments[0]["lca"] != None) + no_assignments = False + if len(assignments) == 0: + no_assignments = True + #write_no_results_page(run_id, job_name) + taxo_used = False + else: + taxo_used = (assignments[0]["lca"] != None) del assignments # arbre global @@ -256,7 +281,7 @@ def main(): # usage d'un fichier TXT de log présent le cgi-bin pour suivre l'évolution d'une analyse et début si besoin log_tree = open("log.txt", "a") tree_created = taxo_used - if taxo_used: + if no_assignments != True: log_tree.write("PAMPA is using a taxonomy. Preparing the tree(s)...\n") try: if taxo_source == "default_reduced": @@ -320,6 +345,8 @@ def main(): # pas d'arbre javascript créé, pas d'affichage sur la page de détails tree_created = False log_tree.write(f"Tree generation failed.\n") + + else: # pas d'arbre javascript créé, pas d'affichage sur la page de détails tree_created = False @@ -337,7 +364,7 @@ def main(): taxo_info = "default" else: taxo_info = "no" - write_main_page(run_id, taxo_used, taxo_info, job_name=job_name) + write_main_page(run_id, taxo_used, taxo_info, no_assignments, job_name=job_name) main()