aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--uploader/species/views.py6
-rw-r--r--uploader/templates/species/create-species.html4
2 files changed, 9 insertions, 1 deletions
diff --git a/uploader/species/views.py b/uploader/species/views.py
index a7e4d59..c671c21 100644
--- a/uploader/species/views.py
+++ b/uploader/species/views.py
@@ -62,6 +62,8 @@ def create_species():
if request.method == "GET":
return render_template("species/create-species.html",
families=species_families(conn),
+ return_to=(
+ request.args.get("return_to") or ""),
activelink="create-species")
error = False
@@ -114,6 +116,10 @@ def create_species():
species = save_species(
conn, common_name, scientific_name, family, taxon_id)
flash("Species saved successfully!", "alert-success")
+
+ return_to = request.form.get("return_to").strip()
+ if return_to:
+ return redirect(url_for(return_to, species_id=species["species_id"]))
return redirect(url_for("species.view_species", species_id=species["species_id"]))
diff --git a/uploader/templates/species/create-species.html b/uploader/templates/species/create-species.html
index 0ed61b7..138dbaa 100644
--- a/uploader/templates/species/create-species.html
+++ b/uploader/templates/species/create-species.html
@@ -19,12 +19,14 @@
<div class="row">
<form id="frm-create-species"
method="POST"
- action="{{url_for('species.create_species')}}"
+ action="{{url_for('species.create_species', return_to=return_to)}}"
class="form-horizontal">
<legend>Create Species</legend>
{{flash_all_messages()}}
+ <input type="hidden" name="return_to" value="{{return_to}}">
+
<div class="form-group">
<label for="txt-taxonomy-id" class="control-label col-sm-2">
Taxonomy ID</label>