Bug 12778 - Regression: Item lost status doesn't show in list of checkouts
authorKyle M Hall <kyle@bywatersolutions.com>
Thu, 13 Nov 2014 17:03:42 +0000 (12:03 -0500)
committerTomas Cohen Arazi <tomascohen@gmail.com>
Mon, 17 Nov 2014 00:15:11 +0000 (21:15 -0300)
When using the longoverdue script it's possible that items marked lost
remain on the patron account. I think it's important for staff to see
that some items are marked lost - currently the list of checkouts
doesn't show any sign of the lost status.

Test Plan:
1) Find a patron with a checked out lost item
2) Note the lost status is not displayed in the checkouts table
3) Apply this patch
4) Refresh the page, note the lost status now displays
5) Repeat this test plan for a damaged item

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Tested successfully with damaged and multiple lost values.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Works as described, no problems found.

Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
koha-tmpl/intranet-tmpl/prog/en/js/checkouts.js
svc/checkouts

index ece3ff2..a21e928 100644 (file)
@@ -183,11 +183,21 @@ $(document).ready(function() {
                 {
                     "iDataSort": 1, // Sort on hidden unformatted date due column
                     "mDataProp": function( oObj ) {
+                        var due = oObj.date_due_formatted;
+
                         if ( oObj.date_due_overdue ) {
-                            return "<span class='overdue'>" + oObj.date_due_formatted + "</span>";
-                        } else {
-                            return oObj.date_due_formatted;
+                            due = "<span class='overdue'>" + due + "</span>";
+                        }
+
+                        if ( oObj.lost ) {
+                            due += "<span class='lost'>" + oObj.lost + "</span>";
                         }
+
+                        if ( oObj.damaged ) {
+                            due += "<span class='dmg'>" + oObj.damaged + "</span>";
+                        }
+
+                        return due;
                     }
                 },
                 {
index 9dc4881..7901d8d 100755 (executable)
@@ -25,8 +25,8 @@ use JSON qw(to_json);
 
 use C4::Auth qw(check_cookie_auth);
 use C4::Biblio qw(GetMarcBiblio GetFrameworkCode GetRecordValue );
-use C4::Circulation
-  qw(GetIssuingCharges CanBookBeRenewed GetRenewCount GetSoonestRenewDate);
+use C4::Circulation qw(GetIssuingCharges CanBookBeRenewed GetRenewCount GetSoonestRenewDate);
+use C4::Koha qw(GetAuthorisedValueByCode);
 use C4::Context;
 
 use Koha::DateUtils;
@@ -86,6 +86,9 @@ my $sql = '
         firstname,
         cardnumber,
 
+        itemlost,
+        damaged,
+
         DATEDIFF( issuedate, CURRENT_DATE() ) AS not_issued_today
     FROM issues
         LEFT JOIN items USING ( itemnumber )
@@ -175,6 +178,8 @@ while ( my $c = $sth->fetchrow_hashref() ) {
             GetMarcBiblio( $c->{biblionumber} ),
             GetFrameworkCode( $c->{biblionumber} )
         ),
+        lost => $c->{itemlost} ? GetAuthorisedValueByCode( 'LOST', $c->{itemlost} ) : undef,
+        damaged => $c->{damaged} ? GetAuthorisedValueByCode( 'DAMAGED', $c->{damaged} ) : undef,
         borrower => {
             surname    => $c->{surname},
             firstname  => $c->{firstname},