liquid_feedback_frontend
view app/main/suggestion/new.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 | |
| children | 02e24b4dd21c | 
 line source
     1 local initiative_id = param.get("initiative_id")
     3 slot.put_into("title", _"Add new suggestion")
     5 slot.select("actions", function()
     6   ui.link{
     7     content = function()
     8         ui.image{ static = "icons/16/cancel.png" }
     9         slot.put(_"Cancel")
    10     end,
    11     module = "initiative",
    12     view = "show",
    13     id = initiative_id,
    14     params = { tab = "suggestions" }
    15   }
    16 end)
    18 ui.form{
    19   module = "suggestion",
    20   action = "add",
    21   params = { initiative_id = initiative_id },
    22   routing = {
    23     default = {
    24       mode = "redirect",
    25       module = "initiative",
    26       view = "show",
    27       id = initiative_id,
    28       params = { tab = "suggestions" }
    29     }
    30   },
    31   attr = { class = "vertical" },
    32   content = function()
    33     local supported = Supporter:by_pk(initiative_id, app.session.member.id) and true or false
    34     if not supported then
    35       ui.field.text{
    36         attr = { class = "warning" },
    37         value = _"You are currently not supporting this initiative. By adding suggestions to this initiative you will automatically become a potential supporter."
    38       }
    39     end
    40     ui.field.text{ label = _"Title (80 chars max)",        name = "name" }
    41     ui.field.text{ label = _"Description", name = "description", multiline = true }
    42     ui.field.select{
    43       label = _"Degree",
    44       name = "degree",
    45       foreign_records = {
    46         { id =  1, name = _"should"},
    47         { id =  2, name = _"must"},
    48       },
    49       foreign_id = "id",
    50       foreign_name = "name"
    51     }
    52     ui.submit{ text = _"Commit suggestion" }
    53   end
    54 }
