X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=rt%2Flib%2FRT%2FClasses.pm;h=4cbb386c5f60bcf758fc87e7066fa17057b23545;hp=60122c7eb15279c7ca3bc6857fafaf384c329254;hb=44dd00a3ff974a17999e86e64488e996edc71e3c;hpb=3d0a1bb06b895c5be6e3f0517d355442a6b1e125 diff --git a/rt/lib/RT/Classes.pm b/rt/lib/RT/Classes.pm index 60122c7eb..4cbb386c5 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-2019 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();