X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=rt%2Flib%2FRT%2FArticles.pm;h=6800232969925b8864facd8bb39073ea541f4770;hp=9bee84472bc1a1bc8937f1eec39722c9c48b4fca;hb=919e930aa9279b3c5cd12b593889cd6de79d67bf;hpb=e9e0cf0989259b94d9758eceff448666a2e5a5cc diff --git a/rt/lib/RT/Articles.pm b/rt/lib/RT/Articles.pm index 9bee84472..680023296 100644 --- a/rt/lib/RT/Articles.pm +++ b/rt/lib/RT/Articles.pm @@ -2,7 +2,7 @@ # # COPYRIGHT: # -# This software is Copyright (c) 1996-2014 Best Practical Solutions, LLC +# This software is Copyright (c) 1996-2015 Best Practical Solutions, LLC # # # (Except where explicitly superseded by other copyright notices) @@ -64,33 +64,19 @@ sub _Init { return $self->SUPER::_Init( @_ ); } -=head2 Next +=head2 AddRecord -Returns the next article that this user can see. +Overrides the collection to ensure that only Articles the user can see +are returned. =cut -sub Next { +sub AddRecord { my $self = shift; + my ($record) = @_; - my $Object = $self->SUPER::Next(); - if ( ( defined($Object) ) and ( ref($Object) ) ) { - - if ( $Object->CurrentUserHasRight('ShowArticle') ) { - return ($Object); - } - - #If the user doesn't have the right to show this Object - else { - return ( $self->Next() ); - } - } - - #if there never was any queue - else { - return (undef); - } - + return unless $record->CurrentUserHasRight('ShowArticle'); + return $self->SUPER::AddRecord( $record ); } =head2 Limit { FIELD => undef, OPERATOR => '=', VALUE => 'undef'}