X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=rt%2Flib%2FRT%2FClasses.pm;h=91a5adf05f93626b240771732c0c7ebf5b46cf36;hb=07bf36bccc4979b12db49b0f71524de4296f3717;hp=60122c7eb15279c7ca3bc6857fafaf384c329254;hpb=3d0a1bb06b895c5be6e3f0517d355442a6b1e125;p=freeside.git diff --git a/rt/lib/RT/Classes.pm b/rt/lib/RT/Classes.pm index 60122c7eb..91a5adf05 100644 --- a/rt/lib/RT/Classes.pm +++ b/rt/lib/RT/Classes.pm @@ -2,7 +2,7 @@ # # COPYRIGHT: # -# This software is Copyright (c) 1996-2013 Best Practical Solutions, LLC +# This software is Copyright (c) 1996-2017 Best Practical Solutions, LLC # # # (Except where explicitly superseded by other copyright notices) @@ -54,50 +54,32 @@ use base 'RT::SearchBuilder'; sub Table {'Classes'} - -=head2 Next - -Returns the next Object that this user can see. +=head2 _Init =cut -sub Next { + sub _Init { my $self = shift; + $self->{'with_disabled_column'} = 1; + return ($self->SUPER::_Init(@_)); + } +=head2 AddRecord - my $Object = $self->SUPER::Next(); - if ((defined($Object)) and (ref($Object))) { - if ( $Object->CurrentUserHasRight('SeeClass') ) { - return($Object); - } - - #If the user doesn't have the right to show this Object - else { - return($self->Next()); - } - } - #if there never was any Object - else { - return(undef); - } - -} - -sub ColumnMapClassName { - return 'RT__Class'; -} - -=head2 NewItem - -Returns an empty new RT::Class item +Overrides the collection to ensure that only Classes the user can +see are returned. =cut -sub NewItem { +sub AddRecord { my $self = shift; - return(RT::Class->new($self->CurrentUser)); + my ($record) = @_; + + return unless $record->CurrentUserHasRight('SeeClass'); + return $self->SUPER::AddRecord( $record ); } +sub _SingularClass { "RT::Class" } RT::Base->_ImportOverlays();