annotate env/ui/partial_load.lua @ 180:02aacb3dffe0
Added support for null delegation in upcoming core release
 | author | bsw | 
 | date | Sun Oct 31 23:38:43 2010 +0100 (2010-10-31) | 
 | parents | 00d1004545f1 | 
 | children |  | 
 
 | rev | line source | 
| bsw/jbe@19 | 1 function ui.partial_load(args) | 
| bsw/jbe@19 | 2   local hourglass_target = ui._partial.hourglass_target | 
| bsw/jbe@19 | 3   local target           = ui._partial.target | 
| bsw/jbe@19 | 4   local id               = param.get_id_cgi() | 
| bsw/jbe@19 | 5   local module           = ui._partial.module | 
| bsw/jbe@19 | 6   local view             = ui._partial.view | 
| bsw/jbe@19 | 7   local cgi_params       = cgi.params | 
| bsw/jbe@19 | 8 | 
| bsw/jbe@19 | 9   local params = { | 
| bsw/jbe@19 | 10   } | 
| bsw/jbe@19 | 11 | 
| bsw/jbe@19 | 12   if ui._partial and ui._partial.static_params then | 
| bsw/jbe@19 | 13     for key, value in pairs(ui._partial.static_params) do | 
| bsw/jbe@19 | 14       params[key] = value | 
| bsw/jbe@19 | 15     end | 
| bsw/jbe@19 | 16   end | 
| bsw/jbe@19 | 17   if ui._partial and ui._partial.params then | 
| bsw/jbe@19 | 18     for i, param_name in ipairs(ui._partial.params) do | 
| bsw/jbe@19 | 19       params[param_name] = cgi_params[param_name] | 
| bsw/jbe@19 | 20     end | 
| bsw/jbe@19 | 21   end | 
| bsw/jbe@19 | 22   if args.params then | 
| bsw/jbe@19 | 23     for key, value in pairs(args.params) do | 
| bsw/jbe@19 | 24       params[key] = value | 
| bsw/jbe@19 | 25     end | 
| bsw/jbe@19 | 26   end | 
| bsw/jbe@19 | 27 | 
| bsw/jbe@19 | 28   request.force_absolute_baseurl() | 
| bsw/jbe@19 | 29 | 
| bsw/jbe@19 | 30   return | 
| bsw/jbe@19 | 31     'var hourglass_el = document.getElementById("' .. hourglass_target .. '");' .. | 
| bsw/jbe@19 | 32     'var hourglass_src = hourglass_el.src;' .. | 
| bsw/jbe@19 | 33     'hourglass_el.src = "' .. encode.url{ static = "icons/16/connect.png" } .. '";' .. | 
| bsw/jbe@19 | 34     'partialMultiLoad(' .. | 
| bsw/jbe@19 | 35       '{ trace: "trace", system_error: "system_error", ' .. target .. ': "default" },' .. | 
| bsw/jbe@19 | 36     '{},' .. | 
| bsw/jbe@19 | 37     '"error",' .. | 
| bsw/jbe@19 | 38     '"' .. encode.url{ | 
| bsw/jbe@19 | 39       module = module, | 
| bsw/jbe@19 | 40       view = view, | 
| bsw/jbe@19 | 41       id = id, | 
| bsw/jbe@19 | 42       params = params | 
| bsw/jbe@19 | 43       } .. '&_webmcp_json_slots[]=default&_webmcp_json_slots[]=trace&_webmcp_json_slots[]=system_error",' .. | 
| bsw/jbe@19 | 44     '{},' .. | 
| bsw/jbe@19 | 45     '{},' .. | 
| bsw/jbe@19 | 46     'function() {' .. | 
| bsw/jbe@19 | 47       'hourglass_el.src = hourglass_src;' .. | 
| bsw/jbe@19 | 48     '},' .. | 
| bsw/jbe@19 | 49     'function() {' .. | 
| bsw/jbe@19 | 50       'hourglass_el.src = hourglass_src;' .. | 
| bsw/jbe@19 | 51     '}' .. | 
| bsw/jbe@19 | 52   '); ' .. | 
| bsw/jbe@19 | 53   'return(false);' | 
| bsw/jbe@19 | 54 end | 
| bsw/jbe@19 | 55 |