private void printPrivilegeSelect()

in src/main/java/org/apache/sling/serviceuser/webconsole/impl/ServiceUserWebConsolePlugin.java [566:610]


    private void printPrivilegeSelect(
            PrintWriter pw,
            String label,
            List<Pair<String, String>> privileges,
            String[] supportedPrivileges,
            String alertMessage) {
        pw.print(TD_STYLE_WIDTH_20);
        pw.print(xss.encodeForHTMLAttr(label));
        pw.println(TD);
        pw.print("<td><table class=\"repeating-container\" style=\"width: 100%\" data-length=\"" + privileges.size()
                + "\"><tr><td>Path</td><td>Privilege</td><td></td>");

        int idx = 0;
        for (Pair<String, String> privilege : privileges) {
            pw.print("</tr><tr class=\"repeating-item\"><td>");

            pw.print("<input type=\"text\"  name=\"acl-path-" + idx + "\" value='");
            pw.print(xss.encodeForHTMLAttr(StringUtils.defaultString(privilege.getKey())));
            pw.print(STYLE_WIDTH_100);

            pw.print("</td><td>");

            pw.print("<input type=\"text\" list=\"data-privileges\" name=\"acl-privilege-" + idx + "\" value='");
            pw.print(xss.encodeForHTMLAttr(StringUtils.defaultString(privilege.getValue())));
            pw.print(STYLE_WIDTH_100);

            pw.print("</td><td>");

            pw.print("<input type=\"button\" value=\"&nbsp;-&nbsp;\" class=\"repeating-remove\" /></td>");
        }
        pw.print("</tr></table>");

        pw.print("<input type=\"button\" value=\"&nbsp;+&nbsp;\" class=\"repeating-add\" />");

        pw.print("<datalist id=\"data-privileges\">");
        for (String option : supportedPrivileges) {
            pw.print("<option");
            pw.print(">");
            pw.print(xss.encodeForHTMLAttr(option));
            pw.print("</option>");
        }
        pw.print("</datalist><script src=\"/system/console/serviceusers/res/ui/serviceusermanager.js\"></script>");
        infoDiv(pw, alertMessage);
        pw.println(TD);
    }