<& /Admin/Elements/Header, Title => 'Modify ACLS for queue '. $QueueObj->QueueId &> <& /Admin/Elements/QueueTabs, id => $id &> <& /Elements/ListActions, actions => \@results &>
<& /Elements/TitleBoxStart, title => 'Modify ACLS for queue '.$QueueObj->QueueId &>

Users

Groups

% while (my $UserObj = $Users->Next()) { % }
<% $UserObj->UserId %> <& /Admin/Elements/SelectRights, PrincipalObj => $UserObj, PrincipalType => 'User', Scope => 'Queue', QueueObj => $QueueObj &>
% while ($GroupObj = $Groups->Next()) { % }
<% $GroupObj->Name %> <& /Admin/Elements/SelectRights, PrincipalObj => $GroupObj, PrincipalType => 'Group', QueueObj => $QueueObj, Scope => 'Queue' &>

Be careful to hold down your control or apple key when selecting rights, to make sure that you don't remove rights that were granted previously.

<& /Elements/Submit, Caption => "Be sure to save your changes", Reset => 1 &> <& /Elements/TitleBoxEnd &>
<%INIT> #Update the acls. my @results = ProcessACLChanges(\@CheckACL, \%ARGS); # {{{ Deal with setting up the display of current rights. # {{{ do basic initialization. #Define vars used in html above my ($GroupObj); my ($right); if (!defined $id) { Abort("No Queue defined"); } my $QueueObj = new RT::Queue($session{'CurrentUser'}); $QueueObj->Load($id) || Abort("Couldn't load queue $id"); # Find out which users we want to display ACL selects for my $Users = new RT::Users($session{'CurrentUser'}); $Users->UnLimit; #$Users->LimitToPrivileged(); # Find out which groups we want to display ACL selects for. my $Groups = new RT::Groups($session{'CurrentUser'}); #TODO: limit this to non-pseudogroups $Groups->UnLimit(); # }}} # }}} <%ARGS> $id = undef $UserString => undef $UserOp => undef $UserField => undef @CheckACL => undef