summaryrefslogtreecommitdiff
path: root/rt/share/html/Admin/Elements/SelectRights
diff options
context:
space:
mode:
Diffstat (limited to 'rt/share/html/Admin/Elements/SelectRights')
-rwxr-xr-xrt/share/html/Admin/Elements/SelectRights17
1 files changed, 8 insertions, 9 deletions
diff --git a/rt/share/html/Admin/Elements/SelectRights b/rt/share/html/Admin/Elements/SelectRights
index 7ec8d1b42..73f5bced3 100755
--- a/rt/share/html/Admin/Elements/SelectRights
+++ b/rt/share/html/Admin/Elements/SelectRights
@@ -2,7 +2,7 @@
%#
%# COPYRIGHT:
%#
-%# This software is Copyright (c) 1996-2011 Best Practical Solutions, LLC
+%# This software is Copyright (c) 1996-2012 Best Practical Solutions, LLC
%# <sales@bestpractical.com>
%#
%# (Except where explicitly superseded by other copyright notices)
@@ -95,21 +95,20 @@ while ( my $ace = $ACLObj->Next ) {
}
- my $ACLObj = new RT::ACL($session{'CurrentUser'});
- my $ACE = new RT::ACE($session{'CurrentUser'});
+ my $ACLObj = RT::ACL->new($session{'CurrentUser'});
+ my $ACE = RT::ACE->new($session{'CurrentUser'});
$ACLObj->LimitToObject( $Object);
$ACLObj->LimitToPrincipal( Id => $PrincipalId);
$ACLObj->OrderBy(FIELD=>'RightName');
- if (ref($Object) && UNIVERSAL::can($Object, 'AvailableRights')) {
+ eval {
%Rights = %{$Object->AvailableRights};
- }
-
- else {
- %Rights = ( loc('System Error') => loc("No rights found") );
- }
+ };
+ if ($@) {
+ %Rights = ( loc('System Error') => loc("No rights found") );
+ }
$ACLDesc = "$PrincipalId-".ref($Object)."-".$Object->Id;
</%INIT>