From 634fa1ed0eed00474f8b8ee1c0a24043c125b56d Mon Sep 17 00:00:00 2001
From: Fridolyn SOMERS <fridolyn.somers@biblibre.com>
Date: Wed, 27 Feb 2013 15:02:49 +0100
Subject: [PATCH] Bug 9720 : uninitialized value warnings in circulation
Content-Type: text/plain; charset="utf-8"
This patch corrects several uninitialized value errors.
Test plan:
- Go to check out page
- Check that issues and old issues are in different tables
- Check that author is diplayed if exists
- Check that patron address is displayed if exists
- Perform a checkout
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
---
circ/circulation.pl | 20 ++++++++++++--------
1 files changed, 12 insertions(+), 8 deletions(-)
diff --git a/circ/circulation.pl b/circ/circulation.pl
index fcc4a05..ca77649 100755
--- a/circ/circulation.pl
+++ b/circ/circulation.pl
@@ -136,6 +136,7 @@ my $organisation = $query->param('organisations');
my $print = $query->param('print') || q{};
my $newexpiry = $query->param('dateexpiry');
my $debt_confirmed = $query->param('debt_confirmed') || 0; # Don't show the debt error dialog twice
+my $charges = $query->param('charges') || q{};
# Check if stickyduedate is turned off
if ( $barcode ) {
@@ -169,7 +170,7 @@ if ( $barcode eq '' && $print eq 'maybe' ) {
}
my $inprocess = ($barcode eq '') ? '' : $query->param('inprocess');
-if ( $barcode eq '' && $query->param('charges') eq 'yes' ) {
+if ( $barcode eq '' && $charges eq 'yes' ) {
$template->param(
PAYCHARGES => 'yes',
borrowernumber => $borrowernumber
@@ -372,7 +373,7 @@ if ($borrowernumber) {
$getreserv{suspend} = $num_res->{'suspend'};
$getreserv{suspend_until} = $num_res->{'suspend_until'};
# check if we have a waiting status for reservations
- if ( $num_res->{'found'} eq 'W' ) {
+ if ( $num_res->{'found'} && $num_res->{'found'} eq 'W' ) {
$getreserv{color} = 'reserved';
$getreserv{waiting} = 1;
# genarate information displaying only waiting reserves
@@ -463,18 +464,19 @@ sub build_issue_data {
$it->{'checkoutdate'} = C4::Dates->new($it->{'issuedate'},'iso')->output('syspref');
$it->{'issuingbranchname'} = GetBranchName($it->{'branchcode'});
- $totalprice += $it->{'replacementprice'};
+ $totalprice += $it->{'replacementprice'} || 0;
$it->{'itemtype'} = $itemtypeinfo->{'description'};
$it->{'itemtype_image'} = $itemtypeinfo->{'imageurl'};
$it->{'dd'} = output_pref($it->{'date_due'});
$it->{'displaydate'} = output_pref($it->{'issuedate'});
#$it->{'od'} = ( $it->{'date_due'} lt $todaysdate ) ? 1 : 0 ;
$it->{'od'} = $it->{'overdue'};
- ($it->{'author'} eq '') and $it->{'author'} = ' ';
+ $it->{'author'} ||= ' ';
$it->{'renew_failed'} = $renew_failed{$it->{'itemnumber'}};
$it->{'return_failed'} = $return_failed{$it->{'barcode'}};
- if ( $it->{'issuedate'}."" gt $todaysdate or $it->{'lastreneweddate'} gt $todaysdate ) {
+ if ( ( $it->{'issuedate'} && $it->{'issuedate'} gt $todaysdate )
+ || ( $it->{'lastreneweddate'} && $it->{'lastreneweddate'} gt $todaysdate ) ) {
(!$relatives) ? push @todaysissues, $it : push @relissues, $it;
} else {
(!$relatives) ? push @previousissues, $it : push @relprevissues, $it;
@@ -649,8 +651,10 @@ my $bor_messages_loop = GetMessages( $borrowernumber, 'B', $branch );
if($bor_messages_loop){ $template->param(flagged => 1 ); }
# Computes full borrower address
-my (undef, $roadttype_hashref) = &GetRoadTypes();
-my $address = $borrower->{'streetnumber'}.' '.$roadttype_hashref->{$borrower->{'streettype'}}.' '.$borrower->{'address'};
+my @fulladdress;
+push @fulladdress, $borrower->{'streetnumber'} if ( $borrower->{'streetnumber'} );
+push @fulladdress, &GetRoadTypeDetails( $borrower->{'streettype'} ) if ( $borrower->{'streettype'} );
+push @fulladdress, $borrower->{'address'} if ( $borrower->{'address'} );
my $fast_cataloging = 0;
if (defined getframeworkinfo('FA')) {
@@ -684,7 +688,7 @@ $template->param(
expiry => format_date($borrower->{'dateexpiry'}),
categorycode => $borrower->{'categorycode'},
categoryname => $borrower->{description},
- address => $address,
+ address => join(' ', @fulladdress),
address2 => $borrower->{'address2'},
email => $borrower->{'email'},
emailpro => $borrower->{'emailpro'},
--
1.7.7.6