From 58249a980712f71758fe6c431478f34eb9ad9e0f Mon Sep 17 00:00:00 2001 From: bob_lyon Date: Tue, 6 Jun 2006 23:36:37 +0000 Subject: [PATCH] merging Katipo changes... site specific chage for issues data being stored in two tables --- C4/Members.pm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/C4/Members.pm b/C4/Members.pm index eda87e6020..e03d1d4569 100644 --- a/C4/Members.pm +++ b/C4/Members.pm @@ -869,6 +869,7 @@ sub allissues { #FIXME: sanity-check order and limit my $dbh = C4::Context->dbh; + my $count=0; my $query = "Select * from issues,biblio,items,biblioitems where borrowernumber=? and items.biblioitemnumber=biblioitems.biblioitemnumber and @@ -886,8 +887,35 @@ sub allissues { while ( my $data = $sth->fetchrow_hashref ) { $result[$i] = $data; $i++; + $count++; + } + + # get all issued items for bornum from oldissues table + # large chunk of older issues data put into table oldissues + # to speed up db calls for issuing items + if(C4::Context->preference("ReadingHistory")){ + my $query2="SELECT * FROM oldissues,biblio,items,biblioitems + WHERE borrowernumber=? + AND items.biblioitemnumber=biblioitems.biblioitemnumber + AND items.itemnumber=oldissues.itemnumber + AND items.biblionumber=biblio.biblionumber + ORDER BY $order"; + if ($limit !=0){ + $limit=$limit-$count; + $query2.=" limit $limit"; + } + + my $sth2=$dbh->prepare($query2); + $sth2->execute($bornum); + + while (my $data2=$sth2->fetchrow_hashref){ + $result[$i]=$data2; + $i++; + } + $sth2->finish; } $sth->finish; + return ( $i, \@result ); } -- 2.39.5