[
  {
    blockid=roles;
    custom=com.netscape.management.msgserv.folders.acl.FRolesControl;
    localvar=
    {
      .rolename.header="Role";
      .rights.header="Rights";

      .add.title="Adding access role";
      .edit.title="Editing access role";
    };

    content=
    [
      { /* roles table */
        ctrl=table;
        id=rolestable;
        stdtable=false;
        showedit=true;
        buttonsat=east;
        addtitle=$.add.title;
        edittitle=$.edit.title;
        addui=accessrole;
        addtext=$g.addbutton.text;
        edittext=$g.editbutton.text;
        deltext=$g.deletebutton.text;
        editui=accessrole;
        val=$service.nntp.content.aclroles.nsvalue;
        visiblerows=10;
        columns=
        [
          {
            header=$.rolename.header;
            varname=rolename;
          },
          {
            header=$.rights.header;
            varname=rights;
          }
        ];
      } /* roles table */

    ];
  },

  { /* access role add/edit ui */
    blockid=accessrole;
    localvar=
    {
      .label.size=80;

      .rolename.text="Role name :";

      .rights.border=[titled, "Rights"];
      .rights.view="View Discussion Group";
      .rights.read="Read Articles";
      .rights.post="Post";
      .rights.cancel="Cancel";
      .rights.cancelany="Cancel Any";
      .rights.moderate="Moderate";
      .rights.newgroup="New group";
      .rights.admin="Admin";
    };

    content=
    [

      { /* role name */
        ctrl=pane;
        layout=[xbox];
        content=
        [ /* role name contents */

          { /* label */
            ctrl=label;
            wrap=$.label.size;
            text=$.rolename.text;
            id=rolename;
            aligny=0.5;
          }, /* label */

          { /* comp space */
            ctrl=rigid;
          }, /* comp space */

          { /* textfield */
            ctrl=text;
            label=rolename;
            aligny=0.5;
            val=$rolename;
          } /* textfield */

        ]; /* role name contents */
      }, /* role name */

      { /* comp space */
        ctrl=vstrut;
        size=$g.comp.space.sep;
      }, /* comp space */

      { /* rights */
        ctrl=pane;
        layout=[ybox];
        border=$.rights.border;
        content=
        [ /* rights contents */

          { /* view */
            ctrl=togglepane;
            style=checkbox;
            text=$.rights.view;
            val=$view;
          }, /* view */

          { /* comp space */
            ctrl=vstrut;
            size=$g.comp.space;
          }, /* comp space */

          { /* read */
            ctrl=togglepane;
            style=checkbox;
            text=$.rights.read;
            val=$read;
          }, /* read */

          { /* comp space */
            ctrl=vstrut;
            size=$g.comp.space;
          }, /* comp space */

          { /* post */
            ctrl=togglepane;
            style=checkbox;
            text=$.rights.post;
            val=$post;
          }, /* post */

          { /* comp space */
            ctrl=vstrut;
            size=$g.comp.space;
          }, /* comp space */

          { /* cancel */
            ctrl=togglepane;
            style=checkbox;
            text=$.rights.cancel;
            val=$cancel;
          }, /* cancel */

          { /* comp space */
            ctrl=vstrut;
            size=$g.comp.space;
          }, /* comp space */

          { /* cancelany */
            ctrl=togglepane;
            style=checkbox;
            text=$.rights.cancelany;
            val=$cancelany;
          }, /* cancelany */

          { /* comp space */
            ctrl=vstrut;
            size=$g.comp.space;
          }, /* comp space */

          { /* moderate */
            ctrl=togglepane;
            style=checkbox;
            text=$.rights.moderate;
            val=$moderate;
          }, /* moderate */

          { /* comp space */
            ctrl=vstrut;
            size=$g.comp.space;
          }, /* comp space */

          { /* newgroup */
            ctrl=togglepane;
            style=checkbox;
            text=$.rights.newgroup;
            val=$newgroup;
          }, /* newgroup */

          { /* comp space */
            ctrl=vstrut;
            size=$g.comp.space;
          }, /* comp space */

          { /* admin */
            ctrl=togglepane;
            style=checkbox;
            text=$.rights.admin;
            val=$admin;
          } /* admin */

        ]; /* rights contents */
      } /* rights */

    ];
  } /* access role add/edit ui */

]


