<%# Admin group membership body (todo §5), captured into the shell content slot. Config: group { name } members { action, rows: { kind:"group"|"user", label, subject }[] } action = remove-member endpoint add { action, options: {label,value}[] } action = add-member endpoint del { action } delete the whole group csrfToken, error? %><% const group = locals.group; const members = locals.members; const add = locals.add; const del = locals.del; const csrf = locals.csrfToken; -%>
<% if (locals.error) { -%> <%- include("alert", { text: locals.error, tone: "neg" }) %> <% } -%>

Members

<% if (members.rows.length) { -%>
<% members.rows.forEach((m) => { -%> <% }) -%>
Members of <%= group.name %>
MemberTypeActions
<%= m.label %><%= m.kind === "group" ? "Group" : "User" %>
<% } else { -%>

No members yet.

<% } -%>

Add a member

<% if (add.options.length) { -%>
<% } else { -%>

All users and groups are already members.

<% } -%>
Delete group