More sort routes
This commit is contained in:
52
flow of control through controller
Normal file
52
flow of control through controller
Normal file
@@ -0,0 +1,52 @@
|
||||
|
||||
* Scheme of things:
|
||||
|
||||
main:
|
||||
#
|
||||
# Initial entry - route is "/<whatever>"
|
||||
#
|
||||
set initial panel
|
||||
for initial panel:
|
||||
load up _data hash with DB fields
|
||||
load up stash with pointer(s) to control fields hash(= get-))
|
||||
and a pointer to the prefix_data hash
|
||||
render initial panel
|
||||
|
||||
do_update:
|
||||
#
|
||||
# Return after submit pushed on panel (this is a post) - route is "/<whatever>u"
|
||||
# parameters in the params hash.
|
||||
#
|
||||
load up all params into prefix_data hash:
|
||||
By panel (series of if statements - only one executed):
|
||||
call validate-PANEL() - return ret = ok or error message
|
||||
|
||||
if validation not ok:
|
||||
render back to current panel with error message in stash
|
||||
otherwise:
|
||||
By panel (series of if statements - only one executed):
|
||||
Copy back to DB all relevant params (is this just the DB params for this panel?)
|
||||
do whatever is required: call perform-PANEL() - return "ok" or Error Message
|
||||
call signal-event for any global actions specified (check it exists - error and continue?)
|
||||
if action smeserver-<whatever>-update exists
|
||||
signal_event smeserver-<whatever>-update
|
||||
call signal-event for any specific actions for thids panel (check it exists first - error and continue)
|
||||
set success in stash
|
||||
if no "nextpanel" entry:
|
||||
set firstpanel
|
||||
else
|
||||
set nextpanel
|
||||
call render
|
||||
|
||||
do_display:
|
||||
#
|
||||
# Return after link clicked in table (this is a get) - route is "/<whatever>d"
|
||||
# Expects ?trt=PANEL&selected="TableRowName" plus any other required
|
||||
#
|
||||
load up all supplied params into prefix_data hash
|
||||
call get-selected-PANEL() - returns hash of all relevent parameters
|
||||
load up returned hash into prefix_data
|
||||
render - to called panel
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user