liquid_feedback_frontend
annotate app/main/issue/show.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
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 | 559c6be0e1e9 |
children | 7d0f4721d2f3 |
rev | line source |
---|---|
bsw/jbe@0 | 1 local issue = Issue:by_id(param.get_id()) |
bsw/jbe@0 | 2 |
bsw/jbe@0 | 3 execute.view{ |
bsw/jbe@4 | 4 module = "issue", |
bsw/jbe@4 | 5 view = "_show_head", |
bsw/jbe@0 | 6 params = { issue = issue } |
bsw/jbe@0 | 7 } |
bsw/jbe@0 | 8 |
bsw/jbe@19 | 9 --[[ |
bsw/jbe@19 | 10 if not issue.fully_frozen and not issue.closed then |
bsw/jbe@19 | 11 slot.select("actions", function() |
bsw/jbe@19 | 12 ui.link{ |
bsw/jbe@19 | 13 content = function() |
bsw/jbe@19 | 14 ui.image{ static = "icons/16/script_add.png" } |
bsw/jbe@19 | 15 slot.put(_"Create alternative initiative") |
bsw/jbe@19 | 16 end, |
bsw/jbe@19 | 17 module = "initiative", |
bsw/jbe@19 | 18 view = "new", |
bsw/jbe@19 | 19 params = { issue_id = issue.id } |
bsw/jbe@19 | 20 } |
bsw/jbe@19 | 21 end) |
bsw/jbe@19 | 22 end |
bsw/jbe@19 | 23 --]] |
bsw/jbe@19 | 24 |
bsw/jbe@4 | 25 util.help("issue.show") |
bsw@2 | 26 |
bsw/jbe@19 | 27 if issue.state == "cancelled" then |
bsw/jbe@19 | 28 local policy = issue.policy |
bsw/jbe@19 | 29 ui.container{ |
bsw/jbe@19 | 30 attr = { class = "not_admitted_info" }, |
bsw/jbe@19 | 31 content = _("This issue has been cancelled. It failed the quorum of #{quorum}.", { quorum = format.percentage(policy.issue_quorum_num / policy.issue_quorum_den) }) |
bsw/jbe@19 | 32 } |
bsw@16 | 33 end |
bsw@16 | 34 |
bsw/jbe@19 | 35 ui.container{ |
bsw/jbe@19 | 36 attr = { class = "issue_initiative_list" }, |
bsw/jbe@19 | 37 content = function() |
bsw/jbe@19 | 38 execute.view{ |
bsw/jbe@19 | 39 module = "initiative", |
bsw/jbe@19 | 40 view = "_list", |
bsw/jbe@19 | 41 params = { |
bsw/jbe@19 | 42 initiatives_selector = issue:get_reference_selector("initiatives"), |
bsw/jbe@19 | 43 issue = issue, |
bsw/jbe@19 | 44 expandable = true, |
bsw/jbe@19 | 45 for_initiative_id = param.get("for_initiative_id", atom.number), |
bsw/jbe@19 | 46 show_for_issue = true |
bsw@3 | 47 } |
bsw/jbe@19 | 48 } |
bsw/jbe@19 | 49 end |
bsw/jbe@0 | 50 } |
bsw/jbe@0 | 51 |
bsw/jbe@19 | 52 slot.put("<br />") |
bsw/jbe@0 | 53 |
bsw/jbe@19 | 54 execute.view{ |
bsw/jbe@19 | 55 module = "issue", |
bsw/jbe@19 | 56 view = "show_tab", |
bsw/jbe@19 | 57 params = { issue = issue } |
bsw/jbe@19 | 58 } |
bsw/jbe@19 | 59 |
bsw/jbe@19 | 60 if issue.snapshot then |
bsw/jbe@19 | 61 slot.put("<br />") |
bsw/jbe@19 | 62 ui.field.timestamp{ label = _"Last snapshot:", value = issue.snapshot } |
bsw/jbe@19 | 63 end |
bsw/jbe@19 | 64 |