switching from searchdesc to query_desc and limit_desc,
[koha_fer] / C4 / Overdues.pm
index 5cfd758..7cf64ab 100644 (file)
@@ -1,6 +1,5 @@
 package C4::Overdues;
 
-# $Id$
 
 # Copyright 2000-2002 Katipo Communications
 #
@@ -29,8 +28,7 @@ use Date::Manip qw/UnixDate/;
 use C4::Log; # logaction
 
 # set the version for version checking
-$VERSION = do { my @v = '$Revision$' =~ /\d+/g; 
-shift(@v) . "." . join("_", map {sprintf "%03d", $_ } @v); };
+$VERSION = 3.00;
 
 =head1 NAME
 
@@ -117,15 +115,20 @@ Koha database.
 #'
 sub Getoverdues {
     my $dbh = C4::Context->dbh;
-    my $sth = $dbh->prepare(
-        "SELECT issues.*,biblioitems.itemtype FROM issues 
-                LEFT JOIN items USING (itemnumber)
-                LEFT JOIN biblioitems USING (biblioitemnumber)
-                WHERE date_due < now() 
-                    AND returndate IS 
-                    NULL ORDER BY borrowernumber 
-        "
-    );
+    my $sth =  (C4::context->preference('item-level_itypes')) ? 
+                               $dbh->prepare(
+                               "SELECT issues.*,items.itype as itemtype FROM issues 
+                       LEFT JOIN items USING (itemnumber)
+                       WHERE date_due < now() 
+                           AND returndate IS NULL ORDER BY borrowernumber " )
+                               :
+                               $dbh->prepare(
+                    "SELECT issues.*,biblioitems.itemtype,items.itype FROM issues 
+                    LEFT JOIN items USING (itemnumber)
+                    LEFT JOIN biblioitems USING (biblioitemnumber)
+                    WHERE date_due < now() 
+                        AND returndate IS 
+                        NULL ORDER BY borrowernumber " );
     $sth->execute;
 
     my @results;
@@ -1146,6 +1149,7 @@ display is filtered by branch
 
 sub GetOverduesForBranch {
     my ( $branch, $location) = @_;
+       my $itype_link =  (C4::context->preference('item-level_itypes')) ?  " items.itype " :  " biblioitems.itemtype ";
     if ( not $location ) {
         my $dbh = C4::Context->dbh;
         my $sth = $dbh->prepare("
@@ -1175,7 +1179,7 @@ sub GetOverduesForBranch {
             LEFT JOIN items ON items.itemnumber = issues.itemnumber
             LEFT JOIN biblio ON biblio.biblionumber = items.biblionumber
             LEFT JOIN biblioitems ON biblioitems.biblioitemnumber=items.biblioitemnumber
-            LEFT JOIN itemtypes ON itemtypes.itemtype = biblioitems.itemtype
+            LEFT JOIN itemtypes ON itemtypes.itemtype = $itype_link
             LEFT JOIN branches ON branches.branchcode = issues.branchcode
             WHERE ( issues.returndate  is null)
               AND ( accountlines.amountoutstanding  != '0.000000')
@@ -1226,7 +1230,7 @@ sub GetOverduesForBranch {
             LEFT JOIN items ON items.itemnumber = issues.itemnumber
             LEFT JOIN biblio ON biblio.biblionumber = items.biblionumber
             LEFT JOIN biblioitems ON biblioitems.biblioitemnumber=items.biblioitemnumber
-            LEFT JOIN itemtypes ON itemtypes.itemtype = biblioitems.itemtype
+            LEFT JOIN itemtypes ON itemtypes.itemtype = $itype_link
             LEFT JOIN branches ON branches.branchcode = issues.branchcode
            WHERE ( issues.returndate  is null )
              AND ( accountlines.amountoutstanding  != '0.000000')