From 97f5ab24e8ff8df638b5320058e8f0d815c28ed4 Mon Sep 17 00:00:00 2001 From: Munyoki Kilyungi Date: Wed, 26 Oct 2022 18:20:08 +0300 Subject: Display a dataset's metadata in the "Trait Data and Analysis" page * wqflask/wqflask/static/new/css/show_trait.css: Show a pointer when a user hovers over summary data. Add extra styling for the metadata table. * wqflask/wqflask/templates/search_result_page.html: Replace dataset.accession_id with metadata.accession_id. * wqflask/wqflask/templates/show_metadata_details.html: New template. file that displays a dataset's metadata in tabular form. * wqflask/wqflask/templates/show_trait.html: Sub-template 'show_metadata_details' conditionally. * wqflask/wqflask/views.py (show_trait_page): Explicitly pass metadata as a dictionary to the template. --- wqflask/wqflask/static/new/css/show_trait.css | 17 ++ wqflask/wqflask/templates/search_result_page.html | 6 +- .../wqflask/templates/show_metadata_details.html | 186 +++++++++++++++++++++ wqflask/wqflask/templates/show_trait.html | 14 +- wqflask/wqflask/views.py | 11 +- 5 files changed, 229 insertions(+), 5 deletions(-) create mode 100644 wqflask/wqflask/templates/show_metadata_details.html diff --git a/wqflask/wqflask/static/new/css/show_trait.css b/wqflask/wqflask/static/new/css/show_trait.css index 3780a8f1..2ce07fec 100644 --- a/wqflask/wqflask/static/new/css/show_trait.css +++ b/wqflask/wqflask/static/new/css/show_trait.css @@ -6,6 +6,23 @@ table.dataTable tbody tr.selected { background-color: #ffee99; } +table.metadata { + table-layout: fixed; +} + +table.metadata td:nth-child(1) { + width: 10%; +} + +table summary b { + cursor: pointer; + text-decoration: underline; +} + +table details[open] { + width: 80%; +} + #bar_chart_container { overflow-x:scroll; } diff --git a/wqflask/wqflask/templates/search_result_page.html b/wqflask/wqflask/templates/search_result_page.html index 2bcfe92b..3a6f6e91 100644 --- a/wqflask/wqflask/templates/search_result_page.html +++ b/wqflask/wqflask/templates/search_result_page.html @@ -17,7 +17,7 @@
-

We searched {{ dataset.fullname }} +

We searched {{ dataset.fullname }}
to find all records {% if go_term is not none %} @@ -97,8 +97,8 @@ - {% if dataset.accession_id is defined %} - + {% if metadata.accession_id %} + {% endif %} diff --git a/wqflask/wqflask/templates/show_metadata_details.html b/wqflask/wqflask/templates/show_metadata_details.html new file mode 100644 index 00000000..36b0f9b5 --- /dev/null +++ b/wqflask/wqflask/templates/show_metadata_details.html @@ -0,0 +1,186 @@ + + {% if metadata.accession_id %} + + + + + {% endif %} + + {% if metadata.geo_series %} + + + + + {% endif %} + + {% if metadata.dataset_group %} + + + + + {% endif %} + + {% if metadata.species_name %} + + + + + {% endif %} + + {% if metadata.inbred_set_name %} + + + + + {% endif %} + + {% if metadata.investigators %} + + + + + {% endif %} + + {% if metadata.tissue_name %} + + + + + {% endif %} + + {% if metadata.platform_name %} + + + + + {% endif %} + + {% if metadata.normalization_name %} + + + + + {% endif %} + + {% if metadata.summary %} + + + + + {% endif %} + + + {% if metadata.about_cases %} + + + + + {% endif %} + + {% if metadata.about_data_processing %} + + + + + {% endif %} + + {% if metadata.notes %} + + + + + {% endif %} + + {% if metadata.experiment_design %} + + + + + {% endif %} + + {% if metadata.contributors %} + + + + + {% endif %} + + {% if metadata.citation %} + + + + {% endif %} + + {% if metadata.acknowledgment %} + + + + + {% endif %} + + + diff --git a/wqflask/wqflask/templates/show_trait.html b/wqflask/wqflask/templates/show_trait.html index 0f93188b..4b92545c 100644 --- a/wqflask/wqflask/templates/show_trait.html +++ b/wqflask/wqflask/templates/show_trait.html @@ -51,8 +51,20 @@

{% include 'show_trait_details.html' %}
+
+ {% if metadata.accession_id %} +
+

+ Data Set Group: {{ dataset.fullname }} +

- +
+
+ {% include 'show_metadata_details.html' %} +
+
+ {% endif %} +

diff --git a/wqflask/wqflask/views.py b/wqflask/wqflask/views.py index 211a8f13..8a0bede3 100644 --- a/wqflask/wqflask/views.py +++ b/wqflask/wqflask/views.py @@ -83,6 +83,7 @@ from utility.helper_functions import get_species_groups from utility.redis_tools import get_redis_conn import utility.hmac as hmac +from gn3.db.rdf import get_dataset_metadata from base.webqtlConfig import TMPDIR @@ -487,7 +488,15 @@ def show_trait_page(): template_vars.js_data = json.dumps(template_vars.js_data, default=json_default_handler, indent=" ") - return render_template("show_trait.html", **template_vars.__dict__) + metadata = ( + template_vars.dataset.accession_id + .bind( + lambda idx: get_dataset_metadata(f"GN{idx}") + ) + ).data + + return render_template("show_trait.html", + metadata=metadata, **template_vars.__dict__) @app.route("/heatmap", methods=('POST',)) -- cgit v1.2.3