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)
committerMason James <mtj@kohaaloha.com>
Thu, 22 Jan 2015 17:51:37 +0000 (06:51 +1300)
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>

Conflicts:
koha-tmpl/intranet-tmpl/prog/en/js/checkouts.js

koha-tmpl/intranet-tmpl/prog/en/js/checkouts.js
svc/checkouts

index b5ec4a7..8ffb04b 100644 (file)
@@ -160,10 +160,21 @@ $(document).ready(function() {
             {
                 "iDataSort": 1, // Sort on hidden unformatted date due column
                 "mDataProp": function( oObj ) {
-                    if ( oObj.date_due_overdue ) {
-                        return "<span class='overdue'>" + oObj.date_due_formatted + "</span>";
-                    } else {
-                        return oObj.date_due_formatted;
+                        var due = oObj.date_due_formatted;
+
+                        if ( oObj.date_due_overdue ) {
+                            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 11f0895..4489ac0 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;
@@ -84,6 +84,9 @@ my $sql = '
         firstname,
         cardnumber,
 
+        itemlost,
+        damaged,
+
         DATEDIFF( issuedate, CURRENT_DATE() ) AS not_issued_today
     FROM issues
         LEFT JOIN items USING ( itemnumber )
@@ -172,6 +175,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},