Simplify requests_update

This commit is contained in:
richard-dds 2018-08-13 21:25:31 -04:00
parent 00909bb5c1
commit bc42cca71a

View File

@ -64,6 +64,22 @@ def requests_update(screen=1, request_id=None):
existing_request=existing_request, existing_request=existing_request,
) )
has_next_screen = jedi_flow.next_screen <= len(jedi_flow.screens)
valid = jedi_flow.validate() and jedi_flow.validate_warnings()
if valid:
jedi_flow.create_or_update_request()
if has_next_screen:
where = url_for(
"requests.requests_form_update",
screen=jedi_flow.next_screen,
request_id=jedi_flow.request_id,
)
else:
where = "/requests"
return redirect(where)
else:
rerender_args = dict( rerender_args = dict(
f=jedi_flow.form, f=jedi_flow.form,
data=post_data, data=post_data,
@ -72,27 +88,6 @@ def requests_update(screen=1, request_id=None):
next_screen=jedi_flow.next_screen, next_screen=jedi_flow.next_screen,
request_id=jedi_flow.request_id, request_id=jedi_flow.request_id,
) )
if jedi_flow.validate():
jedi_flow.create_or_update_request()
valid = jedi_flow.validate_warnings()
if valid:
if jedi_flow.next_screen > len(jedi_flow.screens):
where = "/requests"
else:
where = url_for(
"requests.requests_form_update",
screen=jedi_flow.next_screen,
request_id=jedi_flow.request_id,
)
return redirect(where)
else:
return render_template(
"requests/screen-%d.html" % int(screen), **rerender_args
)
else:
return render_template("requests/screen-%d.html" % int(screen), **rerender_args) return render_template("requests/screen-%d.html" % int(screen), **rerender_args)