webmcp
annotate framework/env/execute/action.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 | eb3e236d261d |
rev | line source |
---|---|
jbe/bsw@0 | 1 --[[-- |
jbe/bsw@0 | 2 action_status = -- status code returned by the action (a string) |
jbe/bsw@0 | 3 execute.action{ |
jbe/bsw@0 | 4 module = module, -- module name of the action to be executed |
jbe/bsw@0 | 5 action = action, -- name of the action to be executed |
jbe/bsw@0 | 6 id = id, -- id to be returned by param.get_id(...) during execution |
jbe/bsw@0 | 7 params = params -- parameters to be returned by param.get(...) during execution |
jbe/bsw@0 | 8 } |
jbe/bsw@0 | 9 |
jbe/bsw@0 | 10 Executes an action without associated filters. |
jbe/bsw@0 | 11 This function is only used by execute.filtered_action{...}, which itself is only used by the webmcp.lua file in the cgi-bin/ directory. |
jbe/bsw@0 | 12 |
jbe/bsw@0 | 13 --]]-- |
jbe/bsw@0 | 14 |
jbe/bsw@0 | 15 function execute.action(args) |
jbe/bsw@0 | 16 local module = args.module |
jbe/bsw@0 | 17 local action = args.action |
jbe/bsw@0 | 18 trace.enter_action{ module = module, action = action } |
jbe/bsw@0 | 19 local action_status = execute.file_path{ |
jbe/bsw@0 | 20 file_path = encode.file_path( |
jbe/bsw@0 | 21 request.get_app_basepath(), |
jbe/bsw@0 | 22 'app', request.get_app_name(), module, '_action', action .. '.lua' |
jbe/bsw@0 | 23 ), |
jbe/bsw@0 | 24 id = args.id, |
jbe/bsw@0 | 25 params = args.params |
jbe/bsw@0 | 26 } |
jbe/bsw@0 | 27 trace.execution_return{ status = action_status } |
jbe/bsw@0 | 28 return action_status |
jbe/bsw@0 | 29 end |