webmcp
annotate framework/env/execute/inner.lua @ 28:ea2e8f3a2776
allow webmcp path to be set in cgi script
this allows another script to include the webmcp script when the cwd is not the cgi-bin. the script needs to set the WEBMCP_PATH variable.
this allows another script to include the webmcp script when the cwd is not the cgi-bin. the script needs to set the WEBMCP_PATH variable.
author | Daniel Poelzleithner <poelzi@poelzi.org> |
---|---|
date | Sun Sep 19 01:36:08 2010 +0200 (2010-09-19) |
parents | 9fdfb27f8e67 |
children | 1fcdd5c6f498 |
rev | line source |
---|---|
jbe/bsw@0 | 1 --[[-- |
jbe/bsw@0 | 2 execute.inner() |
jbe/bsw@0 | 3 |
jbe/bsw@0 | 4 It is MANDATORY to call this function once in each filter of a WebMCP application. Calling execute.inner() calls the next filter in the filter chain, or the view or action, if there are no more filters following. Code executed BEFORE calling this function is executed BEFORE the view or action, while code executed AFTER calling this function is executed AFTER the view of action. |
jbe/bsw@0 | 5 |
jbe/bsw@0 | 6 --]]-- |
jbe/bsw@0 | 7 |
jbe/bsw@0 | 8 function execute.inner() |
jbe/bsw@0 | 9 local stack = execute._wrap_stack |
jbe/bsw@0 | 10 local pos = #stack |
jbe/bsw@0 | 11 if pos == 0 then |
jbe/bsw@0 | 12 error("Unexpected call of execute.inner().") |
jbe/bsw@0 | 13 end |
jbe/bsw@0 | 14 local inner_func = stack[pos] |
jbe/bsw@0 | 15 if not inner_func then |
jbe/bsw@0 | 16 error("Repeated call of execute.inner().") |
jbe/bsw@0 | 17 end |
jbe/bsw@0 | 18 stack[pos] = false |
jbe/bsw@0 | 19 inner_func() |
jbe/bsw@0 | 20 end |