diff --git a/app/main/views/send.py b/app/main/views/send.py index f656c20e4..71349ae8c 100644 --- a/app/main/views/send.py +++ b/app/main/views/send.py @@ -197,21 +197,25 @@ def check_messages(service_id, upload_id): form=CsvUploadForm() ) elif request.method == 'POST': - original_file_name = upload_data.get('original_file_name') - notification_count = upload_data.get('notification_count') - session.pop('upload_data') - try: - job_api_client.create_job(upload_id, service_id, template_id, original_file_name, notification_count) - except HTTPError as e: - if e.status_code == 404: - abort(404) - else: - raise e + if request.files: + # The csv was invalid, validate the csv again + return send_messages(service_id, template_id) + else: + original_file_name = upload_data.get('original_file_name') + notification_count = upload_data.get('notification_count') + session.pop('upload_data') + try: + job_api_client.create_job(upload_id, service_id, template_id, original_file_name, notification_count) + except HTTPError as e: + if e.status_code == 404: + abort(404) + else: + raise e - flash('We’ve started sending your messages', 'default_with_tick') - return redirect( - url_for('main.view_job', service_id=service_id, job_id=upload_id) - ) + flash('We’ve started sending your messages', 'default_with_tick') + return redirect( + url_for('main.view_job', service_id=service_id, job_id=upload_id) + ) def _get_filedata(file):