liquid_feedback_frontend
annotate app/main/policy/list.lua @ 75:733f65c0c0a0
Bugfixes, feature enhancements, code-cleanup, and major work on API
Details:
- API
-- Allow relation name to be passed to helper function util.autoapi{...}
-- Added area API
-- Bugfixes in API
--- Correctly return initiatives (bug #162)
--- Correctly process "id" parameter for initiative API
--- Bugfix related to "state" parameter (bug #165)
--- Changed constant "discussion" to "accepted" (in model/issue.lua, used by API)
--- Fixed JSON encoding in auto_api (bug #181)
--- Ignore list filter "voted" in case of public access
--- Enable access to API without session
- Work on RSS feed (incomplete yet)
- Other bugfixes
-- Handle empty browser identification string
-- Handle invalid date in member/update.lua (bugs #24 #109 #115 #136)
-- Better handle errors while converting uploaded images. (bug #79 +5 duplicates)
-- Don't display revoked initiatives in list of new drafts (bug #134)
-- Fixed syntax error in app/main/member/_action/update_name.lua throwing unexpected error, when new name was too short
-- Do not display refresh support button for revoked initiatives
-- Repaired issue search (bug #150)
-- Fixed typos in german translation files
--- "initi(i)erte"
--- "Er(g)eignisse" (bug #161)
- Code cleanup
-- Removed deprecated motd files locale/motd/de.txt and locale/motd/de_public.txt
-- Removed redundant code in app/main/index/_updated_drafts.lua
- New features and (optical) enhancements
-- Support change of notify email; notification of not approved address added to start page
-- Settings dialog splitted into single pages
-- Mark deactivated members
-- Calendar for birthday selection in profile
-- Policy list public readable when public access is enabled
Details:
- API
-- Allow relation name to be passed to helper function util.autoapi{...}
-- Added area API
-- Bugfixes in API
--- Correctly return initiatives (bug #162)
--- Correctly process "id" parameter for initiative API
--- Bugfix related to "state" parameter (bug #165)
--- Changed constant "discussion" to "accepted" (in model/issue.lua, used by API)
--- Fixed JSON encoding in auto_api (bug #181)
--- Ignore list filter "voted" in case of public access
--- Enable access to API without session
- Work on RSS feed (incomplete yet)
- Other bugfixes
-- Handle empty browser identification string
-- Handle invalid date in member/update.lua (bugs #24 #109 #115 #136)
-- Better handle errors while converting uploaded images. (bug #79 +5 duplicates)
-- Don't display revoked initiatives in list of new drafts (bug #134)
-- Fixed syntax error in app/main/member/_action/update_name.lua throwing unexpected error, when new name was too short
-- Do not display refresh support button for revoked initiatives
-- Repaired issue search (bug #150)
-- Fixed typos in german translation files
--- "initi(i)erte"
--- "Er(g)eignisse" (bug #161)
- Code cleanup
-- Removed deprecated motd files locale/motd/de.txt and locale/motd/de_public.txt
-- Removed redundant code in app/main/index/_updated_drafts.lua
- New features and (optical) enhancements
-- Support change of notify email; notification of not approved address added to start page
-- Settings dialog splitted into single pages
-- Mark deactivated members
-- Calendar for birthday selection in profile
-- Policy list public readable when public access is enabled
author | bsw |
---|---|
date | Thu Jul 08 18:44:02 2010 +0200 (2010-07-08) |
parents | 88ac7798b562 |
children | a34c8c5a4853 |
rev | line source |
---|---|
bsw/jbe@52 | 1 slot.put_into("title", _"Policies") |
bsw/jbe@52 | 2 |
bsw/jbe@52 | 3 util.help("policy.list", _"Policies") |
bsw/jbe@52 | 4 local policies = Policy:new_selector() |
bsw/jbe@52 | 5 :add_where("active") |
bsw/jbe@52 | 6 :add_order_by("index") |
bsw/jbe@52 | 7 :exec() |
bsw/jbe@52 | 8 |
bsw/jbe@52 | 9 ui.list{ |
bsw/jbe@52 | 10 records = policies, |
bsw/jbe@52 | 11 columns = { |
bsw/jbe@52 | 12 { |
bsw/jbe@52 | 13 label_attr = { width = "500" }, |
bsw/jbe@52 | 14 label = _"Policy", |
bsw/jbe@52 | 15 content = function(policy) |
bsw/jbe@52 | 16 ui.tag{ |
bsw/jbe@52 | 17 tag = "div", |
bsw/jbe@52 | 18 attr = { style = "font-weight: bold" }, |
bsw/jbe@52 | 19 content = function() |
bsw/jbe@52 | 20 slot.put(encode.html(policy.name)) |
bsw/jbe@52 | 21 if not policy.active then |
bsw/jbe@52 | 22 slot.put(" (", _"disabled", ")") |
bsw/jbe@52 | 23 end |
bsw/jbe@52 | 24 end |
bsw/jbe@52 | 25 } |
bsw/jbe@52 | 26 ui.tag{ |
bsw/jbe@52 | 27 tag = "div", |
bsw/jbe@52 | 28 content = policy.description |
bsw/jbe@52 | 29 } |
bsw/jbe@52 | 30 end |
bsw/jbe@52 | 31 }, |
bsw/jbe@52 | 32 { |
bsw/jbe@52 | 33 label_attr = { width = "200" }, |
bsw/jbe@52 | 34 label = _"Phases", |
bsw/jbe@52 | 35 content = function(policy) |
bsw/jbe@52 | 36 ui.field.text{ label = _"New" .. ":", value = "≤ " .. policy.admission_time } |
bsw/jbe@52 | 37 ui.field.text{ label = _"Discussion" .. ":", value = policy.discussion_time } |
bsw/jbe@52 | 38 ui.field.text{ label = _"Frozen" .. ":", value = policy.verification_time } |
bsw/jbe@52 | 39 ui.field.text{ label = _"Voting" .. ":", value = policy.voting_time } |
bsw/jbe@52 | 40 end |
bsw/jbe@52 | 41 }, |
bsw/jbe@52 | 42 { |
bsw/jbe@52 | 43 label_attr = { width = "200" }, |
bsw/jbe@52 | 44 label = _"Quorum", |
bsw/jbe@52 | 45 content = function(policy) |
bsw/jbe@52 | 46 ui.field.text{ |
bsw/jbe@52 | 47 label = _"Issue quorum" .. ":", |
bsw/jbe@52 | 48 value = "≥ " .. tostring(policy.issue_quorum_num) .. "/" .. tostring(policy.issue_quorum_den) |
bsw/jbe@52 | 49 } |
bsw/jbe@52 | 50 ui.field.text{ |
bsw/jbe@52 | 51 label = _"Initiative quorum" .. ":", |
bsw/jbe@52 | 52 value = "≥ " .. tostring(policy.initiative_quorum_num) .. "/" .. tostring(policy.initiative_quorum_den) |
bsw/jbe@52 | 53 } |
bsw/jbe@52 | 54 ui.field.text{ |
bsw/jbe@52 | 55 label = _"Majority" .. ":", |
bsw/jbe@52 | 56 value = (policy.majority_strict and ">" or "≥" ) .. " " .. tostring(policy.majority_num) .. "/" .. tostring(policy.majority_den) |
bsw/jbe@52 | 57 } |
bsw/jbe@52 | 58 end |
bsw/jbe@52 | 59 }, |
bsw/jbe@52 | 60 } |
bsw/jbe@52 | 61 } |