Lines 486-499
END_SQL
Link Here
|
486 |
my @item_info = map { $_ =~ /^date|date$/ ? format_date( $item_info->{$_} ) : $item_info->{$_} || '' } @item_content_fields; |
486 |
my @item_info = map { $_ =~ /^date|date$/ ? format_date( $item_info->{$_} ) : $item_info->{$_} || '' } @item_content_fields; |
487 |
$titles .= join("\t", @item_info) . "\n"; |
487 |
$titles .= join("\t", @item_info) . "\n"; |
488 |
$itemcount++; |
488 |
$itemcount++; |
489 |
push (@items, $item_info->{'biblionumber'}); |
489 |
my %item = (biblionumber => $item_info->{'biblionumber'}, |
|
|
490 |
biblioitemnumber => $item_info->{'biblioitemnumber'}, |
491 |
itemnumber => $item_info->{'itemnumber'}); |
492 |
push (@items, \%item); |
490 |
} |
493 |
} |
491 |
$sth2->finish; |
494 |
$sth2->finish; |
492 |
$letter = parse_letter( |
495 |
$letter = parse_letter( |
493 |
{ letter => $letter, |
496 |
{ letter => $letter, |
494 |
borrowernumber => $borrowernumber, |
497 |
borrowernumber => $borrowernumber, |
495 |
branchcode => $branchcode, |
498 |
branchcode => $branchcode, |
496 |
biblionumber => \@items, |
499 |
items => \@items, |
497 |
substitute => { # this appears to be a hack to overcome incomplete features in this code. |
500 |
substitute => { # this appears to be a hack to overcome incomplete features in this code. |
498 |
bib => $branch_details->{'branchname'}, # maybe 'bib' is a typo for 'lib<rary>'? |
501 |
bib => $branch_details->{'branchname'}, # maybe 'bib' is a typo for 'lib<rary>'? |
499 |
'items.content' => $titles |
502 |
'items.content' => $titles |
Lines 651-662
sub parse_letter { # FIXME: this code should probably be moved to C4::Letters:pa
Link Here
|
651 |
$params->{'letter'} = C4::Letters::parseletter( $params->{'letter'}, 'branches', $params->{'branchcode'} ); |
654 |
$params->{'letter'} = C4::Letters::parseletter( $params->{'letter'}, 'branches', $params->{'branchcode'} ); |
652 |
} |
655 |
} |
653 |
|
656 |
|
654 |
if ( $params->{'biblionumber'} ) { |
657 |
if ( $params->{'items'} ) { |
655 |
my $item_format = ''; |
658 |
my $item_format = ''; |
656 |
PROCESS_ITEMS: |
659 |
PROCESS_ITEMS: |
657 |
while (scalar(@{$params->{'biblionumber'}}) > 0) { |
660 |
while (scalar(@{$params->{'items'}}) > 0) { |
658 |
my $item = shift @{$params->{'biblionumber'}}; |
661 |
my $item = shift @{$params->{'items'}}; |
659 |
my $fine = GetFine($item, $params->{'borrowernumber'}); |
662 |
my $biblionumber = $item->{'biblionumber'}; |
|
|
663 |
my $biblioitemnumber = $item->{'biblioitemnumber'}; |
664 |
my $itemnumber = $item->{'itemnumber'}; |
665 |
my $fine = GetFine($biblionumber, $params->{'borrowernumber'}); |
660 |
if (!$item_format) { |
666 |
if (!$item_format) { |
661 |
$params->{'letter'}->{'content'} =~ m/(<item>.*<\/item>)/; |
667 |
$params->{'letter'}->{'content'} =~ m/(<item>.*<\/item>)/; |
662 |
$item_format = $1; |
668 |
$item_format = $1; |
Lines 668-677
sub parse_letter { # FIXME: this code should probably be moved to C4::Letters:pa
Link Here
|
668 |
$formatted_fine = Encode::encode("utf8", $formatted_fine); |
674 |
$formatted_fine = Encode::encode("utf8", $formatted_fine); |
669 |
$params->{'letter'}->{'content'} =~ s/<fine>.*<\/fine>/$formatted_fine/; |
675 |
$params->{'letter'}->{'content'} =~ s/<fine>.*<\/fine>/$formatted_fine/; |
670 |
} |
676 |
} |
671 |
$params->{'letter'} = C4::Letters::parseletter( $params->{'letter'}, 'biblio', $item ); |
677 |
$params->{'letter'} = C4::Letters::parseletter( $params->{'letter'}, 'biblio', $biblionumber ); |
672 |
$params->{'letter'} = C4::Letters::parseletter( $params->{'letter'}, 'biblioitems', $item ); |
678 |
$params->{'letter'} = C4::Letters::parseletter( $params->{'letter'}, 'biblioitems', $biblioitemnumber ); |
673 |
$params->{'letter'} = C4::Letters::parseletter( $params->{'letter'}, 'items', $item ); |
679 |
$params->{'letter'} = C4::Letters::parseletter( $params->{'letter'}, 'items', $itemnumber ); |
674 |
$params->{'letter'}->{'content'} =~ s/(<item>.*<\/item>)/$1\n$item_format/ if scalar(@{$params->{'biblionumber'}} > 0); |
680 |
$params->{'letter'}->{'content'} =~ s/(<item>.*<\/item>)/$1\n$item_format/ if scalar(@{$params->{'items'}} > 0); |
675 |
|
681 |
|
676 |
} |
682 |
} |
677 |
} |
683 |
} |
678 |
- |
|
|