liquid_feedback_frontend
view app/main/issue/show_tab.lua @ 41:53a45356c107
Several bugfixes, including bugfix in timeline
- Fixed grouping of multiple new drafts in timeline
- Do not allow to add suggestions when issue is half frozen
- Do not show initiator invitations for (half-)frozen or closed issues
- Fixed problem with duplicates in display of vote-later requests
- Clarified german "member is participating" info text in delegation chain
- Hide inactive members from member listing
- Fixed grouping of multiple new drafts in timeline
- Do not allow to add suggestions when issue is half frozen
- Do not show initiator invitations for (half-)frozen or closed issues
- Fixed problem with duplicates in display of vote-later requests
- Clarified german "member is participating" info text in delegation chain
- Hide inactive members from member listing
| author | bsw | 
|---|---|
| date | Sun Mar 07 15:36:54 2010 +0100 (2010-03-07) | 
| parents | 00d1004545f1 | 
| children | 0849be391140 | 
 line source
     1 local issue
     2 if request.get_json_request_slots() then
     3   issue = Issue:by_id(param.get("issue_id"))
     4 else
     5   issue = param.get("issue", "table")
     6 end
     8 local voting_requested_percentage = 0
     9 if issue.vote_later and issue.population and issue.population > 0 then
    10   voting_requested_percentage = math.ceil(issue.vote_later  / issue.population * 100)
    11 end
    13 local interested_members_selector = issue:get_reference_selector("interested_members_snapshot")
    14   :join("issue", nil, "issue.id = direct_interest_snapshot.issue_id")
    15   :add_field("direct_interest_snapshot.weight")
    16   :add_where("direct_interest_snapshot.event = issue.latest_snapshot_event")
    18 local voting_requests_selector = issue:get_reference_selector("interested_members_snapshot")
    19   :join("issue", nil, "issue.id = direct_interest_snapshot.issue_id")
    20   :add_where("direct_interest_snapshot.voting_requested = false")
    21   :add_where("direct_interest_snapshot.event = issue.latest_snapshot_event")
    23 local delegations_selector = issue:get_reference_selector("delegations")
    26 ui.tabs{
    27   module = "issue",
    28   view = "show_tab",
    29   static_params = { issue_id = issue.id },
    30   {
    31     name = "interested_members",
    32     label = _"Interested members" .. " (" .. tostring(interested_members_selector:count()) .. ")" ,
    33     icon = { static = "icons/16/eye.png" },
    34     module = "member",
    35     view = "_list",
    36     params = {
    37       issue = issue,
    38       members_selector = interested_members_selector
    39     }
    40   },
    41   {
    42     name = "voting_requests",
    43     label = _"Vote later requests" .. " (" .. tostring(voting_requests_selector:count()) .. ") (" .. tostring(voting_requested_percentage) ..  "%)",
    44     icon = { static = "icons/16/clock_play.png" },
    45     module = "member",
    46     view = "_list",
    47     params = {
    48       issue = issue,
    49       members_selector = voting_requests_selector
    50     }
    51   },
    52   {
    53     name = "delegations",
    54     label = _"Delegations" .. " (" .. tostring(delegations_selector:count()) .. ")" ,
    55     icon = { static = "icons/16/table_go.png" },
    56     module = "delegation",
    57     view = "_list",
    58     params = { delegations_selector = delegations_selector }
    59   },
    60   {
    61     name = "details",
    62     label = _"Details",
    63     icon = { static = "icons/16/magnifier.png" },
    64     module = "issue",
    65     view = "_details",
    66     params = { issue = issue }
    67   },
    68 }
