aboutsummaryrefslogtreecommitdiff
path: root/gn2/wqflask
diff options
context:
space:
mode:
Diffstat (limited to 'gn2/wqflask')
-rw-r--r--gn2/wqflask/templates/wiki/genewiki.html1
-rw-r--r--gn2/wqflask/templates/wiki/history.html57
-rw-r--r--gn2/wqflask/views.py20
3 files changed, 78 insertions, 0 deletions
diff --git a/gn2/wqflask/templates/wiki/genewiki.html b/gn2/wqflask/templates/wiki/genewiki.html
index 496f5e28..41fa97df 100644
--- a/gn2/wqflask/templates/wiki/genewiki.html
+++ b/gn2/wqflask/templates/wiki/genewiki.html
@@ -19,6 +19,7 @@
{% if entry.get("web_url") %}
<sup> <small> <a href = "{{ entry.web_url }}" target = "_blank"> <span class = "glyphicon glyphicon-globe" aria-hidden = "true"></span>web</a></small></sup>
{% endif %}
+ <sup><small>[<a href="/genewiki/{{ entry.id }}/history" target="_blank">history</a>]</small></sup>
</li>
{% endfor %}
</ol>
diff --git a/gn2/wqflask/templates/wiki/history.html b/gn2/wqflask/templates/wiki/history.html
new file mode 100644
index 00000000..bda802d3
--- /dev/null
+++ b/gn2/wqflask/templates/wiki/history.html
@@ -0,0 +1,57 @@
+{% extends "base.html" %}
+{% block content %}
+ {{ flash_me() }}
+ <div class = "container container-fluid">
+ <div class="row">
+ <div class="col-sm-9">
+ <h2 class="text-info">GeneWiki Entry History</h2>
+ {% for entry in entries %}
+ <h3 class="text-info">
+ {% if loop.index0 == 0 %}
+ <strong>Most Recent Version:</strong>
+ {% elif loop.index0 == 1 %}
+ <strong>Previous Version:</strong>
+ {% endif %}
+ </h3>
+ <table class="table table-responsive table-bordered">
+ <tbody>
+ <tr>
+ <th>Gene Symbol:</th>
+ <td>{{ entry.symbol }}</td>
+ </tr>
+ <tr>
+ <th>PubMed IDs:</th>
+ <td>
+ {% for id in entry.pubmed_ids %}
+ <a href="http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=Retrieve&db=PubMed&list_uids={{ id }}&dopt=Abstract">{{ id }}</a>&nbsp;
+ {% endfor %}
+ {% if not entry.pubmed_ids %}Not Available{% endif %}
+ </td>
+ </tr>
+ <tr>
+ <th>Web URL:</th>
+ <td>{{ entry.web_url or "Not Available" }}</td>
+ </tr>
+ <tr>
+ <th>Entry:</th>
+ <td>{{ entry.comment }}</td>
+ </tr>
+ <tr>
+ <th>Category:</th>
+ <td>{{ '; '.join(entry.categories) or "Not Available" }}</td>
+ </tr>
+ <tr>
+ <th>Add Time:</th>
+ <td>{{ entry.created }}</td>
+ </tr>
+ <tr>
+ <th>Reason for Modification:</th>
+ <td>{{ entry.reason or "Not Available" }}</td>
+ </tr>
+ </tbody>
+ </table>
+ {% endfor %}
+ </div>
+ </div>
+ </div>
+{% endblock %}
diff --git a/gn2/wqflask/views.py b/gn2/wqflask/views.py
index 4164c604..7699c303 100644
--- a/gn2/wqflask/views.py
+++ b/gn2/wqflask/views.py
@@ -1312,6 +1312,26 @@ def display_genewiki_page(symbol: str):
)
+@app.route("/genewiki/<int:comment_id>/history")
+def display_wiki_history(comment_id: str):
+ entries = []
+ try:
+ entries = requests.get(
+ urljoin(
+ GN3_LOCAL_URL,
+ f"/api/metadata/wiki/{comment_id}/history"
+ )
+ )
+ entries.raise_for_status()
+ entries = entries.json()
+ except requests.RequestException as excp:
+ flash(excp, "alert-warning")
+ return render_template(
+ "wiki/history.html",
+ entries=entries
+ )
+
+
@app.route("/datasets/<name>", methods=('GET',))
def get_dataset(name):
from gn2.wqflask.oauth2.client import oauth2_get