BugFixing : viewlog.pl was broken (comma missing)
[koha_fer] / C4 / Reserves.pm
old mode 100755 (executable)
new mode 100644 (file)
index 3d948a2..d6bb83a
@@ -30,6 +30,7 @@ use C4::Context;
 use C4::Biblio;
 use C4::Search;
 use C4::Circulation;
+use C4::Accounts;
 
 our ($VERSION,@ISA,@EXPORT,@EXPORT_OK,%EXPORT_TAGS);
 
@@ -429,9 +430,9 @@ sub GetReserveFee {
     my $dbh   = C4::Context->dbh;
     my $const = lc substr( $constraint, 0, 1 );
     my $query = qq/
-      SELECT * FROM borrowers,categories
+      SELECT * FROM borrowers
+    LEFT JOIN categories ON borrowers.categorycode = categories.categorycode
     WHERE borrowernumber = ?
-      AND borrowers.categorycode = categories.categorycode
     /;
     my $sth = $dbh->prepare($query);
     $sth->execute($borrowernumber);
@@ -446,9 +447,8 @@ sub GetReserveFee {
         # first find biblioitem records
         my @biblioitems;
         my $sth1 = $dbh->prepare(
-            "SELECT * FROM biblio,biblioitems
-                   WHERE (biblio.biblionumber = ?)
-                     AND (biblio.biblionumber = biblioitems.biblionumber)"
+            "SELECT * FROM biblio LEFT JOIN biblioitems on biblio.biblionumber = biblioitems.biblionumber
+                   WHERE (biblio.biblionumber = ?)"
         );
         $sth1->execute($biblionumber);
         while ( my $data1 = $sth1->fetchrow_hashref ) {
@@ -611,10 +611,10 @@ sub CheckReserves {
         # Look up the item by itemnumber
         my $query = "
             SELECT items.biblionumber, items.biblioitemnumber, itemtypes.notforloan
-            FROM   items, biblioitems, itemtypes
-            WHERE  items.biblioitemnumber = biblioitems.biblioitemnumber
-               AND biblioitems.itemtype = itemtypes.itemtype
-               AND itemnumber=$qitem
+            FROM   items
+            LEFT JOIN biblioitems ON items.biblioitemnumber = biblioitems.biblioitemnumber
+            LEFT JOIN itemtypes ON biblioitems.itemtype = itemtypes.itemtype
+            WHERE  itemnumber=$qitem
         ";
         $sth = $dbh->prepare($query);
     }
@@ -623,7 +623,9 @@ sub CheckReserves {
         # Look up the item by barcode
         my $query = "
             SELECT items.biblionumber, items.biblioitemnumber, itemtypes.notforloan
-            FROM   items, biblioitems, itemtypes
+            FROM   items
+            LEFT JOIN biblioitems ON items.biblioitemnumber = biblioitems.biblioitemnumber
+            LEFT JOIN itemtypes ON biblioitems.itemtype = itemtypes.itemtype
             WHERE  items.biblioitemnumber = biblioitems.biblioitemnumber
               AND biblioitems.itemtype = itemtypes.itemtype
               AND barcode=$qbc
@@ -703,7 +705,7 @@ priorities of the other people who are waiting on the book.
 sub CancelReserve {
     my ( $biblio, $item, $borr ) = @_;
     my $dbh = C4::Context->dbh;
-        if ( ( $item and $borr ) and ( not $biblio ) ) {
+        if ( $item and $borr ) {
         # removing a waiting reserve record....
         # update the database...
         my $query = "
@@ -718,7 +720,7 @@ sub CancelReserve {
         $sth->execute( $item, $borr );
         $sth->finish;
     }
-    if ( ( $biblio and $borr ) and ( not $item ) ) {
+    else {
         # removing a reserve record....
         # get the prioritiy on this record....
         my $priority;