aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--uploader/genotypes/views.py14
-rw-r--r--uploader/templates/genotypes/base.html10
-rw-r--r--uploader/templates/genotypes/list-genotypes.html3
-rw-r--r--uploader/templates/genotypes/list-markers.html5
4 files changed, 24 insertions, 8 deletions
diff --git a/uploader/genotypes/views.py b/uploader/genotypes/views.py
index e6b1ba7..0433420 100644
--- a/uploader/genotypes/views.py
+++ b/uploader/genotypes/views.py
@@ -96,16 +96,24 @@ def list_genotypes(species: dict, population: dict, **kwargs):# pylint: disable=
activelink="list-genotypes")
-@genotypesbp.route("/<int:species_id>/genotypes/list-markers", methods=["GET"])
+@genotypesbp.route(
+ "/<int:species_id>/populations/<int:population_id>/genotypes/list-markers",
+ methods=["GET"])
@require_login
-@with_species(redirect_uri="species.populations.genotypes.index")
-def list_markers(species: dict, **kwargs):# pylint: disable=[unused-argument]
+@with_population(species_redirect_uri="species.populations.genotypes.index",
+ redirect_uri="species.populations.genotypes.select_population")
+def list_markers(
+ species: dict,
+ population: dict,
+ **kwargs
+):# pylint: disable=[unused-argument]
"""List a species' genetic markers."""
with database_connection(app.config["SQL_URI"]) as conn:
start_from = max(safe_int(request.args.get("start_from") or 0), 0)
count = safe_int(request.args.get("count") or 20)
return render_template("genotypes/list-markers.html",
species=species,
+ population=population,
total_markers=genotype_markers_count(
conn, species["SpeciesId"]),
start_from=start_from,
diff --git a/uploader/templates/genotypes/base.html b/uploader/templates/genotypes/base.html
index 56819e5..7d61312 100644
--- a/uploader/templates/genotypes/base.html
+++ b/uploader/templates/genotypes/base.html
@@ -6,11 +6,15 @@
{%else%}
class="breadcrumb-item"
{%endif%}>
- {%if dataset is mapping%}
+ {%if population is mapping%}
<a href="{{url_for('species.populations.genotypes.list_genotypes',
species_id=species.SpeciesId,
- population_id=population.Id,
- dataset_id=dataset.Id)}}">{{dataset.Name}}</a>
+ population_id=population.Id)}}">
+ {%if dataset is defined and dataset is mapping%}
+ {{dataset.Name}}
+ {%else%}
+ Genotypes
+ {%endif%}</a>
{%else%}
<a href="{{url_for('species.populations.genotypes.index')}}">Genotypes</a>
{%endif%}
diff --git a/uploader/templates/genotypes/list-genotypes.html b/uploader/templates/genotypes/list-genotypes.html
index 2dc0d51..0f074fd 100644
--- a/uploader/templates/genotypes/list-genotypes.html
+++ b/uploader/templates/genotypes/list-genotypes.html
@@ -26,7 +26,8 @@
<p>There are a total of {{total_markers}} currently registered genetic markers
for the "{{species.FullName}}" species. You can click
<a href="{{url_for('species.populations.genotypes.list_markers',
- species_id=species.SpeciesId)}}"
+ species_id=species.SpeciesId,
+ population_id=population.Id)}}"
title="View genetic markers for species '{{species.FullName}}">
this link to view the genetic markers
</a>.
diff --git a/uploader/templates/genotypes/list-markers.html b/uploader/templates/genotypes/list-markers.html
index 9198b44..a705ae3 100644
--- a/uploader/templates/genotypes/list-markers.html
+++ b/uploader/templates/genotypes/list-markers.html
@@ -13,7 +13,8 @@
class="breadcrumb-item"
{%endif%}>
<a href="{{url_for('species.populations.genotypes.list_markers',
- species_id=species.SpeciesId)}}">List markers</a>
+ species_id=species.SpeciesId,
+ population_id=population.Id)}}">List markers</a>
</li>
{%endblock%}
@@ -30,6 +31,7 @@
{%if start_from > 0%}
<a href="{{url_for('species.populations.genotypes.list_markers',
species_id=species.SpeciesId,
+ population_id=population.Id,
start_from=start_from-count,
count=count)}}">
<span class="glyphicon glyphicon-backward"></span>
@@ -45,6 +47,7 @@
{%if start_from + count < total_markers%}
<a href="{{url_for('species.populations.genotypes.list_markers',
species_id=species.SpeciesId,
+ population_id=population.Id,
start_from=start_from+count,
count=count)}}">
Next