6 RT->Logger->debug('Removing all delegated rights');
8 my $acl = RT::ACL->new(RT->SystemUser);
9 my $groupjoin = $acl->Join(
11 FIELD1 => 'PrincipalId',
15 $acl->Limit( ALIAS => $groupjoin,
22 while ( my $ace = $acl->Next ) {
23 my ( $ok, $msg ) = $ace->Delete();
26 RT->Logger->warn( "Unable to delete ACE " . $ace->id . ": " . $msg );
30 my $groups = RT::Groups->new(RT->SystemUser);
31 $groups->Limit( FIELD => 'Domain',
36 while ( my $group = $groups->Next ) {
37 my $members = $group->MembersObj();
38 while ( my $member = $members->Next ) {
39 my ( $ok, $msg ) = $group->DeleteMember( $member->MemberId );
41 RT->Logger->warn( "Unable to remove group member "
46 $group->PrincipalObj->Delete;
47 $group->RT::Record::Delete();
51 RT->Logger->debug('Removing all Delegate and PersonalGroup rights');
53 my $acl = RT::ACL->new(RT->SystemUser);
54 for my $right (qw/AdminOwnPersonalGroups AdminAllPersonalGroups DelegateRights/) {
55 $acl->Limit( FIELD => 'RightName', VALUE => $right );
58 while ( my $ace = $acl->Next ) {
59 my ( $ok, $msg ) = $ace->Delete();
60 RT->Logger->debug("Removing ACE ".$ace->id." for right ".$ace->__Value('RightName'));
63 RT->Logger->warn( "Unable to delete ACE " . $ace->id . ": " . $msg );
68 RT->Logger->debug('Removing unimplemented RejectTicket and ModifyTicketStatus rights');
70 my $acl = RT::ACL->new(RT->SystemUser);
71 for my $right (qw/RejectTicket ModifyTicketStatus/) {
72 $acl->Limit( FIELD => 'RightName', VALUE => $right );
75 while ( my $ace = $acl->Next ) {
76 my ( $ok, $msg ) = $ace->Delete();
77 RT->Logger->debug("Removing ACE ".$ace->id." for right ".$ace->__Value('RightName'));
80 RT->Logger->warn( "Unable to delete ACE " . $ace->id . ": " . $msg );