webmcp
diff framework/env/request/__init.lua @ 215:ba3dd4a17e3d
Some code cleanup/rearrangement for request handling
author | jbe |
---|---|
date | Mon Jan 12 01:48:11 2015 +0100 (2015-01-12) |
parents | 47ebf4213716 |
children | 25a20bd1f416 |
line diff
1.1 --- a/framework/env/request/__init.lua Sat Jan 10 10:44:17 2015 +0100 1.2 +++ b/framework/env/request/__init.lua Mon Jan 12 01:48:11 2015 +0100 1.3 @@ -14,82 +14,6 @@ 1.4 request._json_requests_allowed = false 1.5 1.6 request._params = {} 1.7 -local depth 1.8 -if cgi then -- if-clause to support interactive mode 1.9 - if cgi.params._webmcp_404 then 1.10 - request.force_absolute_baseurl() 1.11 - request._is_404 = true 1.12 - end 1.13 - for key, value in pairs(cgi.params) do 1.14 - if not string.match(key, "^_webmcp_") then 1.15 - request._params[key] = value 1.16 - end 1.17 - end 1.18 - local path = cgi.params._webmcp_path 1.19 - if path then 1.20 - local function parse() 1.21 - local module, action, view, suffix, id 1.22 - if path == "" then 1.23 - request._module = "index" 1.24 - request._view = "index" 1.25 - return 1.26 - end 1.27 - module = string.match(path, "^([^/]+)/$") 1.28 - if module then 1.29 - request._module = module 1.30 - request._view = "index" 1.31 - return 1.32 - end 1.33 - module, action = string.match(path, "^([^/]+)/([^/.]+)$") 1.34 - if module then 1.35 - request._module = module 1.36 - request._action = action 1.37 - return 1.38 - end 1.39 - module, view, suffix = string.match(path, "^([^/]+)/([^/.]+)%.([^/]+)$") 1.40 - if module then 1.41 - request._module = module 1.42 - request._view = view 1.43 - request._suffix = suffix 1.44 - return 1.45 - end 1.46 - module, view, id, suffix = string.match(path, "^([^/]+)/([^/]+)/([^/.]+)%.([^/]+)$") 1.47 - if module then 1.48 - request._module = module 1.49 - request._view = view 1.50 - request._id = id 1.51 - request._suffix = suffix 1.52 - return 1.53 - end 1.54 - request._is_404 = true 1.55 - end 1.56 - parse() 1.57 - -- allow id to also be set by "_webmcp_id" parameter 1.58 - if cgi.params._webmcp_id ~= nil then 1.59 - request._id = cgi.params._webmcp_id 1.60 - end 1.61 - depth = 0 1.62 - for match in string.gmatch(path, "/") do 1.63 - depth = depth + 1 1.64 - end 1.65 - else 1.66 - request._module = cgi.params._webmcp_module 1.67 - request._action = cgi.params._webmcp_action 1.68 - request._view = cgi.params._webmcp_view 1.69 - request._suffix = cgi.params._webmcp_suffix 1.70 - request._id = cgi.params._webmcp_id 1.71 - depth = tonumber(cgi.params._webmcp_urldepth) 1.72 - end 1.73 -end 1.74 -if depth and depth > 0 then 1.75 - local elements = {} 1.76 - for i = 1, depth do 1.77 - elements[#elements+1] = "../" 1.78 - end 1.79 - request._relative_baseurl = table.concat(elements) 1.80 -else 1.81 - request._relative_baseurl = "./" 1.82 -end 1.83 1.84 request._app_basepath = assert( 1.85 os.getenv("WEBMCP_APP_BASEPATH"),