Lines 44-65
Returns all the suggestions the logged in user is allowed to see.
Link Here
|
44 |
sub search_limited { |
44 |
sub search_limited { |
45 |
my ( $self, $params, $attributes ) = @_; |
45 |
my ( $self, $params, $attributes ) = @_; |
46 |
|
46 |
|
47 |
my $resultset = $self; |
47 |
my $rs = $self; |
48 |
|
48 |
|
49 |
# filter on user branch |
49 |
my $userenv = C4::Context->userenv; |
50 |
if ( C4::Context->preference('IndependentBranches') |
50 |
my @restricted_branchcodes; |
51 |
&& !C4::Context->IsSuperLibrarian() ) |
51 |
if ( $userenv and $userenv->{number} ) { |
52 |
{ |
52 |
my $logged_in_user = Koha::Patrons->find( $userenv->{number} ); |
53 |
# If IndependentBranches is set and the logged in user is not superlibrarian |
53 |
@restricted_branchcodes = |
54 |
# Then we want to filter by the user's library (i.e. cannot see suggestions |
54 |
$logged_in_user->libraries_where_can_see_patrons; |
55 |
# from other libraries) |
55 |
$rs = $self->search( { 'me.branchcode' => { -in => \@restricted_branchcodes } } ) |
56 |
my $userenv = C4::Context->userenv; |
56 |
if @restricted_branchcodes; |
57 |
|
|
|
58 |
$resultset = $self->search({ branchcode => $userenv->{branch} }) |
59 |
if $userenv && $userenv->{branch}; |
60 |
} |
57 |
} |
61 |
|
58 |
return $rs->search( $params, $attributes ); |
62 |
return $resultset->search( $params, $attributes); |
|
|
63 |
} |
59 |
} |
64 |
|
60 |
|
65 |
=head2 Internal methods |
61 |
=head2 Internal methods |
66 |
- |
|
|