liquid_feedback_frontend

annotate env/ui/partial_load.lua @ 19:00d1004545f1

Dynamic interface using XMLHttpRequests, and many other changes

Bugfixes:
- Only allow voting on admitted initiatives
- Repaired issue search
- Don't display delegations for closed issues on member page
- Don't show revoke link in initiative, when issue is already half_frozen
- Localization for voting JavaScript
- Display author of suggestions

Disclosure of voting data after voting is finished:
- Possibility to inspect every ballot including preferences
- Show number of voters preferring one initiative to another initiative

Interface behaviour changes:
- Reversed default order of drafts
- Default order of suggestions changed
- Show new drafts of initiatives only once per day in timeline

Accessibility:
- Barrier-free voting implemented
- POST links are now accessible without JavaScript
- Changed gray for unsatisfied supporters in bar graph to a lighter gray

Other interface improvements:
- Optical enhancements
- Dynamic interface using XMLHttpRequests
- Show usage terms in about section
- Show own membership in area listing
- Show uninformed supporters greyed out and marked with yellow question mark
- Warning box in non-admitted initiatives
- When voted, don't display voting notice and change label of voting link
- Show object counts in more tabulator heads
- Enlarged member statement input field

Miscellaneous:
- Code cleanup
- Added README file containing installation instructions
- Use new WebMCP function ui.filters{...} instead of own ui.filter and ui.order functions
author bsw/jbe
date Sat Feb 20 22:10:31 2010 +0100 (2010-02-20)
parents
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

Impressum / About Us