annotate app/main/unit/_sidebar_members.lua @ 1738:38a8b840bff7
Create individual privilege only if configured
 | author | 
 bsw | 
 | date | 
 Mon Oct 11 09:41:05 2021 +0200 (2021-10-11) | 
 | parents | 
 701a5cf6b067  | 
 | children | 
  | 
 
 | rev | 
   line source | 
| 
bsw@1045
 | 
     1 if not app.session:has_access("all_pseudonymous") then
 | 
| 
bsw@1045
 | 
     2   return
 | 
| 
bsw@1045
 | 
     3 end
 | 
| 
bsw@1045
 | 
     4 
 | 
| 
bsw@1045
 | 
     5 local unit = param.get("unit", "table")
 | 
| 
bsw@1045
 | 
     6 local members_selector = Member:new_selector()
 | 
| 
bsw@1045
 | 
     7   :join("privilege", nil, { "privilege.member_id = member.id AND privilege.unit_id = ? AND privilege.voting_right", unit.id })
 | 
| 
bsw@1045
 | 
     8   :add_where("active")
 | 
| 
bsw@1045
 | 
     9   :limit(50)
 | 
| 
bsw@1045
 | 
    10 
 | 
| 
bsw@1045
 | 
    11 local member_count = unit.member_count or 0
 | 
| 
bsw@1045
 | 
    12   
 | 
| 
bsw@1045
 | 
    13 ui.sidebar ( "tab-members", function ()
 | 
| 
bsw@1045
 | 
    14   ui.sidebarHead( function ()
 | 
| 
bsw@1045
 | 
    15     ui.heading {
 | 
| 
bsw@1045
 | 
    16       level = 2,
 | 
| 
bsw@1045
 | 
    17       content = _("Eligible members (#{count})", { count = member_count })
 | 
| 
bsw@1045
 | 
    18     }
 | 
| 
bsw@1045
 | 
    19   end )
 | 
| 
bsw@1045
 | 
    20   execute.view {
 | 
| 
bsw@1045
 | 
    21     module = 'member', view   = '_list', params = {
 | 
| 
bsw@1045
 | 
    22       members_selector = members_selector,
 | 
| 
bsw@1045
 | 
    23       no_filter = true, no_paginate = true,
 | 
| 
bsw@1045
 | 
    24       member_class = "sidebarRow sidebarRowNarrow"
 | 
| 
bsw@1045
 | 
    25     }
 | 
| 
bsw@1045
 | 
    26   }
 | 
| 
bsw@1045
 | 
    27   if member_count > members_selector:count() then
 | 
| 
bsw@1045
 | 
    28     ui.link {
 | 
| 
bsw@1045
 | 
    29       text = _"Show all members",
 | 
| 
bsw@1045
 | 
    30       module = "member", view = "list"
 | 
| 
bsw@1045
 | 
    31     }
 | 
| 
bsw@1045
 | 
    32   end
 | 
| 
bsw@1045
 | 
    33 end )
 |