X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;f=moremember.pl;h=b838559e3b67a6087e84966719c26001dcddd4b1;hb=e339f5d64ba06180925f551da12fd5a8cdffd444;hp=2451be475c7819668d4eb03f1672c4ace8627171;hpb=0499df0045cbb71decf07195c0f03a0ccb8f1ec5;p=koha_fer diff --git a/moremember.pl b/moremember.pl index 2451be475c..b838559e3b 100755 --- a/moremember.pl +++ b/moremember.pl @@ -65,6 +65,8 @@ my $bornum=$input->param('bornum'); my $data=borrdata('',$bornum); +$template->param($data->{'categorycode'} => 1); # in template => instutitional (A for Adult & C for children) + $data->{'dateenrolled'} = format_date($data->{'dateenrolled'}); $data->{'expiry'} = format_date($data->{'expiry'}); $data->{'dateofbirth'} = format_date($data->{'dateofbirth'}); @@ -75,13 +77,14 @@ $data->{'ethnicity'} = fixEthnicity($data->{'ethnicity'}); $data->{&expand_sex_into_predicate($data->{'sex'})} = 1; if ($data->{'categorycode'} eq 'C'){ - my $data2=borrdata('',$data->{'guarantor'}); - $data->{'streetaddress'}=$data2->{'streetaddress'}; - $data->{'city'}=$data2->{'city'}; - $data->{'physstreet'}=$data2->{'physstreet'}; - $data->{'streetcity'}=$data2->{'streetcity'}; - $data->{'phone'}=$data2->{'phone'}; - $data->{'phoneday'}=$data2->{'phoneday'}; + my $data2=borrdata('',$data->{'guarantor'}); + $data->{'streetaddress'}=$data2->{'streetaddress'}; + $data->{'city'}=$data2->{'city'}; + $data->{'physstreet'}=$data2->{'physstreet'}; + $data->{'streetcity'}=$data2->{'streetcity'}; + $data->{'phone'}=$data2->{'phone'}; + $data->{'phoneday'}=$data2->{'phoneday'}; + $data->{'zipcode'} = $data2->{'zipcode'}; } @@ -90,25 +93,25 @@ if ($data->{'ethnicity'} || $data->{'ethnotes'}) { } if ($data->{'categorycode'} ne 'C'){ - $template->param(isguarantee => 1); - # FIXME - # It looks like the $i is only being returned to handle walking through - # the array, which is probably better done as a foreach loop. - # - my ($count,$guarantees)=findguarantees($data->{'borrowernumber'}); - my @guaranteedata; - for (my $i=0;$i<$count;$i++){ - push (@guaranteedata, {borrowernumber => $guarantees->[$i]->{'borrowernumber'}, - cardnumber => $guarantees->[$i]->{'cardnumber'}, - name => $guarantees->[$i]->{'firstname'} . " " . $guarantees->[$i]->{'surname'}}); - } - $template->param(guaranteeloop => \@guaranteedata); + $template->param(isguarantee => 1); + # FIXME + # It looks like the $i is only being returned to handle walking through + # the array, which is probably better done as a foreach loop. + # + my ($count,$guarantees)=findguarantees($data->{'borrowernumber'}); + my @guaranteedata; + for (my $i=0;$i<$count;$i++){ + push (@guaranteedata, {borrowernumber => $guarantees->[$i]->{'borrowernumber'}, + cardnumber => $guarantees->[$i]->{'cardnumber'}, + name => $guarantees->[$i]->{'firstname'} . " " . $guarantees->[$i]->{'surname'}}); + } + $template->param(guaranteeloop => \@guaranteedata); } else { - my ($guarantor)=findguarantor($data->{'borrowernumber'}); - unless ($guarantor->{'borrowernumber'} == 0){ - $template->param(guarantorborrowernumber => $guarantor->{'borrowernumber'}, guarantorcardnumber => $guarantor->{'cardnumber'}); - } + my ($guarantor)=findguarantor($data->{'borrowernumber'}); + unless ($guarantor->{'borrowernumber'} == 0){ + $template->param(guarantorborrowernumber => $guarantor->{'borrowernumber'}, guarantorcardnumber => $guarantor->{'cardnumber'}); + } } my %bor; @@ -125,63 +128,63 @@ my ($numaccts,$accts,$total)=getboracctrecord('',\%bor); #} my @accountdata; for (my$i=0;$i<$numaccts;$i++){ - my $amount= $accts->[$i]{'amount'} + 0.00; - my $amount2= $accts->[$i]{'amountoutstanding'} + 0.00; - my %row = %$accts->[$i]; - if ($amount2 != 0){ - my $item="   "; - $row{'date'} = format_date($accts->[$i]{'date'}); - - if ($accts->[$i]{'accounttype'} ne 'Res'){ - #get item data - #$item= - } - - # FIXME - # why set this variable if it's not going to be used? - # - my $env; - if ($accts->[$i]{'accounttype'} ne 'Res'){ - my $iteminfo=C4::Circulation::Circ2::getiteminformation($env,$accts->[$i]->{'itemnumber'},''); - # FIXME, seems to me $iteminfo gets not defined - %row = (%row , %$iteminfo) if $iteminfo; - } - } - push (@accountdata, \%row); + my $amount= $accts->[$i]{'amount'} + 0.00; + my $amount2= $accts->[$i]{'amountoutstanding'} + 0.00; + my %row = %$accts->[$i]; + if ($amount2 != 0){ + my $item="   "; + $row{'date'} = format_date($accts->[$i]{'date'}); + + if ($accts->[$i]{'accounttype'} ne 'Res'){ + #get item data + #$item= + } + + # FIXME + # why set this variable if it's not going to be used? + # + my $env; + if ($accts->[$i]{'accounttype'} ne 'Res'){ + my $iteminfo=C4::Circulation::Circ2::getiteminformation($env,$accts->[$i]->{'itemnumber'},''); + # FIXME, seems to me $iteminfo gets not defined + %row = (%row , %$iteminfo) if $iteminfo; + } + } + push (@accountdata, \%row); } my ($count,$issue)=borrissues($bornum); my $today=ParseDate('today'); my @issuedata; for (my $i=0;$i<$count;$i++){ - my $datedue=ParseDate($issue->[$i]{'date_due'}); - $issue->[$i]{'date_due'} = format_date($issue->[$i]{'date_due'}); - my %row = %{$issue->[$i]}; - if ($datedue < $today){ - $row{'red'}=1; #print ""; - } - #find the charge for an item - # FIXME - This is expecting - # &C4::Circulation::Renewals2::calc_charges, but it's getting - # &C4::Circulation::Circ2::calc_charges, which only returns one - # element, so itemtype isn't being set. - # But &C4::Circulation::Renewals2::calc_charges doesn't appear to - # return the correct item type either (or a properly-formatted - # charge, for that matter). - my ($charge,$itemtype)=calc_charges(undef,$dbh,$issue->[$i]{'itemnumber'},$bornum); - $row{'itemtype'}=$itemtype; - $row{'charge'}=$charge; - - #check item is not reserved - my ($restype,$reserves)=CheckReserves($issue->[$i]{'itemnumber'}); - if ($restype){ - print "[$i]{'biblionumber'}>On Request - no renewals"; -# } elsif ($issue->[$i]->{'renewals'} > 0) { -# print "Previously Renewed - no renewals"; - } else { - $row{'norenew'}=0; - } - push (@issuedata, \%row); + my $datedue=ParseDate($issue->[$i]{'date_due'}); + $issue->[$i]{'date_due'} = format_date($issue->[$i]{'date_due'}); + my %row = %{$issue->[$i]}; + if ($datedue < $today){ + $row{'red'}=1; #print ""; + } + #find the charge for an item + # FIXME - This is expecting + # &C4::Circulation::Renewals2::calc_charges, but it's getting + # &C4::Circulation::Circ2::calc_charges, which only returns one + # element, so itemtype isn't being set. + # But &C4::Circulation::Renewals2::calc_charges doesn't appear to + # return the correct item type either (or a properly-formatted + # charge, for that matter). + my ($charge,$itemtype)=calc_charges(undef,$dbh,$issue->[$i]{'itemnumber'},$bornum); + $row{'itemtype'}=$itemtype; + $row{'charge'}=$charge; + + #check item is not reserved + my ($restype,$reserves)=CheckReserves($issue->[$i]{'itemnumber'}); + if ($restype){ + print "[$i]{'biblionumber'}>On Request - no renewals"; + # } elsif ($issue->[$i]->{'renewals'} > 0) { + # print "Previously Renewed - no renewals"; + } else { + $row{'norenew'}=0; + } + push (@issuedata, \%row); } my ($rescount,$reserves)=FindReserves('',$bornum); #From C4::Reserves2 @@ -192,7 +195,7 @@ foreach my $reserveline (@$reserves) { my $restitle; my %row = %$reserveline; if ($reserveline->{'constrainttype'} eq 'o'){ - $restitle=getreservetitle($reserveline->{'biblionumber'},$reserveline->{'borrowernumber'},$reserveline->{'reservedate'},$reserveline->{'timestamp'}); + $restitle=getreservetitle($reserveline->{'biblionumber'},$reserveline->{'borrowernumber'},$reserveline->{'reservedate'},$reserveline->{'rtimestamp'}); %row = (%row , %$restitle) if $restitle; } push (@reservedata, \%row);