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"),

Impressum / About Us