-# patrontable ....
-if ($borrower) {
- my $flags = $borrower->{'flags'};
- my @flagloop;
- my $flagset;
- foreach my $flag ( sort keys %$flags ) {
- my %flaginfo;
- unless ($flagset) { $flagset = 1; }
- $flaginfo{redfont} = ( $flags->{$flag}->{'noissues'} );
- $flaginfo{flag} = $flag;
- if ( $flag eq 'CHARGES' ) {
- $flaginfo{msg} = $flag;
- $flaginfo{charges} = 1;
- $flaginfo{chargeamount} = $flags->{$flag}->{amount};
- $flaginfo{borrowernumber} = $borrower->{borrowernumber};
- }
- elsif ( $flag eq 'WAITING' ) {
- $flaginfo{msg} = $flag;
- $flaginfo{waiting} = 1;
- my @waitingitemloop;
- my $items = $flags->{$flag}->{'itemlist'};
- foreach my $item (@$items) {
- my $biblio = GetBiblioFromItemNumber( $item->{'itemnumber'});
- push @waitingitemloop, {
- biblionum => $biblio->{'biblionumber'},
- barcode => $biblio->{'barcode'},
- title => $biblio->{'title'},
- brname => $branches->{ $biblio->{'holdingbranch'} }->{'branchname'},
- };
- }
- $flaginfo{itemloop} = \@waitingitemloop;
- }
- elsif ( $flag eq 'ODUES' ) {
- my $items = $flags->{$flag}->{'itemlist'};
- my @itemloop;
- foreach my $item ( sort { $a->{'date_due'} cmp $b->{'date_due'} }
- @$items )
- {
- my $biblio = GetBiblioFromItemNumber( $item->{'itemnumber'});
- push @itemloop, {
- duedate => format_sqldatetime($item->{date_due}),
- biblionum => $biblio->{'biblionumber'},
- barcode => $biblio->{'barcode'},
- title => $biblio->{'title'},
- brname => $branches->{ $biblio->{'holdingbranch'} }->{'branchname'},
- };
- }
- $flaginfo{itemloop} = \@itemloop;
- $flaginfo{overdue} = 1;
- }
- else {
- $flaginfo{other} = 1;
- $flaginfo{msg} = $flags->{$flag}->{'message'};
- }
- push( @flagloop, \%flaginfo );
- }
- $template->param(
- flagset => $flagset,
- flagloop => \@flagloop,
- riborrowernumber => $borrower->{'borrowernumber'},
- riborcnum => $borrower->{'cardnumber'},
- riborsurname => $borrower->{'surname'},
- ribortitle => $borrower->{'title'},
- riborfirstname => $borrower->{'firstname'}
- );
-}