View | Details | Raw Unified | Return to bug 18403
Collapse All | Expand All

(-)a/Koha/Patron.pm (-3 / +16 lines)
Lines 595-608 Return true if the patron (usually the logged in user) can see the patron's info Link Here
595
595
596
sub can_see_patron_infos {
596
sub can_see_patron_infos {
597
    my ( $self, $patron ) = @_;
597
    my ( $self, $patron ) = @_;
598
    return $self->can_see_patrons_from( $patron->library->branchcode );
599
}
600
601
=head3 can_see_patrons_from
602
603
my $can_see = $patron->can_see_patrons_from( $branchcode );
604
605
Return true if the patron (usually the logged in user) can see the patron's infos from a given library
606
607
=cut
608
609
sub can_see_patrons_from {
610
    my ( $self, $branchcode ) = @_;
598
    my $can = 0;
611
    my $can = 0;
599
    if ( $self->branchcode eq $patron->branchcode ) {
612
    if ( $self->branchcode eq $branchcode ) {
600
        $can = 1;
613
        $can = 1;
601
    } elsif ( $self->can( { borrowers => 'view_borrower_infos_from_any_libraries' } ) ) {
614
    } elsif ( $self->can( { borrowers => 'view_borrower_infos_from_any_libraries' } ) ) {
602
        $can = 1;
615
        $can = 1;
603
    } elsif ( my $library_groups = $self->library->library_groups ) {
616
    } elsif ( my $library_groups = $self->library->library_groups ) {
604
        while ( my $library_group = $library_groups->next ) {
617
        while ( my $library_group = $library_groups->next ) {
605
            if ( $library_group->parent->has_child( $patron->library->branchcode ) ) {
618
            if ( $library_group->parent->has_child( $branchcode ) ) {
606
                $can = 1;
619
                $can = 1;
607
                last;
620
                last;
608
            }
621
            }
Lines 652-657 sub libraries_where_can_see_patrons { Link Here
652
            }
665
            }
653
        }
666
        }
654
    }
667
    }
668
655
    return sort(uniq(@restricted_branchcodes));
669
    return sort(uniq(@restricted_branchcodes));
656
}
670
}
657
671
658
- 

Return to bug 18403