From dab64dd96739a8cc397ab872f4e4a6ad6ea0fcd3 Mon Sep 17 00:00:00 2001 From: Frederick Muriuki Muriithi Date: Tue, 10 Feb 2026 10:40:07 -0600 Subject: Samples: Redirect background job correctly on success. --- uploader/samples/views.py | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/uploader/samples/views.py b/uploader/samples/views.py index 1c0569d..2a09f8e 100644 --- a/uploader/samples/views.py +++ b/uploader/samples/views.py @@ -172,7 +172,11 @@ def upload_samples(species_id: int, population_id: int):#pylint: disable=[too-ma ] + (["--firstlineheading"] if firstlineheading else []), "samples_upload", extra_meta={ - "job_name": f"Samples Upload: {samples_file.name}" + "job_name": f"Samples Upload: {samples_file.name}", + "species_id": species["SpeciesId"], + "population_id": population["Id"], + "success_handler": ( + "uploader.samples.views.samples_upload_success_handler") }, external_id=session.logged_in_user_id()), _jobs_db, @@ -181,3 +185,20 @@ def upload_samples(species_id: int, population_id: int):#pylint: disable=[too-ma app.logger.getEffectiveLevel()).lower()) return redirect( url_for("background-jobs.job_status", job_id=job["job_id"])) + + +def samples_upload_success_handler(job): + """Handler for background jobs: Successful upload of samples""" + return return_to_samples_list_view_handler( + job, "Samples uploaded successfully.") + + +def return_to_samples_list_view_handler(job, msg): + """Handler for background jobs: Return to list_samples page.""" + flash(msg, "alert alert-success") + return redirect(url_for( + "species.populations.samples." + "list_samples", + species_id=job["metadata"]["species_id"], + population_id=job["metadata"]["population_id"], + job_id=job["job_id"])) -- cgit 1.4.1