From 9f0326bcb27e41437c0c93dc901ffa0c39cc742e Mon Sep 17 00:00:00 2001 From: Kyle M Hall Date: Thu, 13 Nov 2014 12:03:42 -0500 Subject: [PATCH] Bug 12778 - Regression: Item lost status doesn't show in list of checkouts 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 Tested successfully with damaged and multiple lost values. Signed-off-by: Katrin Fischer Works as described, no problems found. Signed-off-by: Mason James --- .../intranet-tmpl/prog/en/js/checkouts.js | 36 ++++++++++++------- svc/checkouts | 9 +++-- 2 files changed, 30 insertions(+), 15 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/checkouts.js b/koha-tmpl/intranet-tmpl/prog/en/js/checkouts.js index 1755d6cdf4..79ed290fc7 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/js/checkouts.js +++ b/koha-tmpl/intranet-tmpl/prog/en/js/checkouts.js @@ -151,19 +151,29 @@ $(document).ready(function() { } else { return "" + PREVIOUS_CHECKOUTS + ""; } - } - }, - { - "mDataProp": "date_due", - "bVisible": false, - }, - { - "iDataSort": 1, // Sort on hidden unformatted date due column - "mDataProp": function( oObj ) { - if ( oObj.date_due_overdue ) { - return "" + oObj.date_due_formatted + ""; - } else { - return oObj.date_due_formatted; + }, + { + "mDataProp": "date_due", + "bVisible": false, + }, + { + "iDataSort": 1, // Sort on hidden unformatted date due column + "mDataProp": function( oObj ) { + var due = oObj.date_due_formatted; + + if ( oObj.date_due_overdue ) { + due = "" + due + ""; + } + + if ( oObj.lost ) { + due += "" + oObj.lost + ""; + } + + if ( oObj.damaged ) { + due += "" + oObj.damaged + ""; + } + + return due; } } }, diff --git a/svc/checkouts b/svc/checkouts index f56bdffb83..e56ef619e2 100755 --- a/svc/checkouts +++ b/svc/checkouts @@ -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; @@ -83,6 +83,9 @@ my $sql = ' firstname, cardnumber, + itemlost, + damaged, + DATEDIFF( issuedate, CURRENT_DATE() ) AS not_issued_today FROM issues LEFT JOIN items USING ( itemnumber ) @@ -170,6 +173,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},