Mercurial > prosody-hg
comparison util/adhoc.lua @ 11352:e10567199f02
util.adhoc: Propagate error with producing initial initial data
Bonus: Allow use of util.error tables
| author | Kim Alvefur <zash@zash.se> |
|---|---|
| date | Sun, 31 Jan 2021 21:10:03 +0100 |
| parents | 49312378ba1d |
| children |
comparison
equal
deleted
inserted
replaced
| 11351:6b541d3c4c1b | 11352:e10567199f02 |
|---|---|
| 21 return { status = "canceled" }; | 21 return { status = "canceled" }; |
| 22 end | 22 end |
| 23 local fields, err = form:data(data.form); | 23 local fields, err = form:data(data.form); |
| 24 return result_handler(fields, err, data); | 24 return result_handler(fields, err, data); |
| 25 else | 25 else |
| 26 local values, err = initial_data(data); | |
| 27 if type(err) == "table" then | |
| 28 return {status = "error"; error = err} | |
| 29 elseif type(err) == "string" then | |
| 30 return {status = "error"; error = {type = "cancel"; condition = "internal-server-error", err}} | |
| 31 end | |
| 26 return { status = "executing", actions = {"next", "complete", default = "complete"}, | 32 return { status = "executing", actions = {"next", "complete", default = "complete"}, |
| 27 form = { layout = form, values = initial_data(data) } }, "executing"; | 33 form = { layout = form, values = values } }, "executing"; |
| 28 end | 34 end |
| 29 end | 35 end |
| 30 end | 36 end |
| 31 | 37 |
| 32 return { new_simple_form = new_simple_form, | 38 return { new_simple_form = new_simple_form, |
