def platform_admin_returned_letters(): form = ReturnedLettersForm() if form.validate_on_submit(): references = [ re.sub('NOTIFY00[0-9]', '', r.strip()) for r in form.references.data.split('\n') if r.strip() ] try: letter_jobs_client.submit_returned_letters(references) redis_client.delete_cache_keys_by_pattern( 'service-????????-????-????-????-????????????-returned-letters-summary' ) except HTTPError as error: if error.status_code == 400: error_references = [ re.match('references (.*) does not match', e['message']).group(1) for e in error.message ] form.references.errors.append("Invalid references: {}".format( ', '.join(error_references))) else: raise error else: flash('Submitted {} letter references'.format(len(references)), 'default') return redirect(url_for('.platform_admin_returned_letters')) return render_template( 'views/platform-admin/returned-letters.html', form=form, )
def platform_admin_returned_letters(): form = ReturnedLettersForm() if form.validate_on_submit(): references = [re.sub("NOTIFY00[0-9]", "", r.strip()) for r in form.references.data.split("\n") if r.strip()] try: letter_jobs_client.submit_returned_letters(references) except HTTPError as error: if error.status_code == 400: error_references = [re.match("references (.*) does not match", e["message"]).group(1) for e in error.message] form.references.errors.append("Invalid references: {}".format(", ".join(error_references))) else: raise error else: flash("Submitted {} letter references".format(len(references)), "default") return redirect(url_for(".platform_admin_returned_letters")) return render_template( "views/platform-admin/returned-letters.html", form=form, )