@@ -, +, @@
---
koha-tmpl/intranet-tmpl/prog/en/includes/strings.inc | 1 +
koha-tmpl/intranet-tmpl/prog/js/checkouts.js | 11 +++++++++++
svc/checkouts | 8 ++++++++
3 files changed, 20 insertions(+)
--- a/koha-tmpl/intranet-tmpl/prog/en/includes/strings.inc
+++ a/koha-tmpl/intranet-tmpl/prog/en/includes/strings.inc
@@ -10,6 +10,7 @@
var RETURN_CLAIMED_FAILURE = _("Unable to claim as returned");
var RETURN_CLAIMED_MAKE = _("Claim returned");
var RETURN_CLAIMED_NOTES = _("Notes about return claim");
+ var CONFIRM_RETURN = _("Confirm");
var NOT_CHECKED_OUT = _("not checked out");
var TOO_MANY_RENEWALS = _("too many renewals");
var ON_RESERVE = _("on hold");
--- a/koha-tmpl/intranet-tmpl/prog/js/checkouts.js
+++ a/koha-tmpl/intranet-tmpl/prog/js/checkouts.js
@@ -130,6 +130,15 @@ $(document).ready(function() {
}, "json")
});
+ $(".confirm:checked:visible").each(function() {
+ itemnumber = $(this).val();
+ id = "#checkin_" + itemnumber;
+ materials = $(this).data('materials');
+
+ $(this).replaceWith("" + CONFIRM_RETURN + " (" + materials + "): ");
+ $(id).parent().parent().addClass('warn');
+ });
+
$(".renew:checked:visible").each(function() {
var override_limit = $("#override_limit").is(':checked') ? 1 : 0;
@@ -543,6 +552,8 @@ $(document).ready(function() {
"mDataProp": function ( oObj ) {
if ( oObj.can_renew_error == "on_reserve" ) {
return "" + ON_HOLD + "";
+ } else if ( oObj.materials ) {
+ return "";
} else {
return "";
}
--- a/svc/checkouts
+++ a/svc/checkouts
@@ -104,6 +104,7 @@ my $sql = '
items.damaged,
items.location,
items.enumchron,
+ items.materials,
DATEDIFF( issues.issuedate, CURRENT_DATE() ) AS not_issued_today,
@@ -139,6 +140,7 @@ $sth->execute(@parameters);
my $item_level_itypes = C4::Context->preference('item-level_itypes');
my $claims_returned_lost_value = C4::Context->preference('ClaimReturnedLostValue');
+my $confirm_parts_required = C4::Context->preference("CircConfirmItemParts");
my @checkouts_today;
my @checkouts_previous;
@@ -186,6 +188,11 @@ while ( my $c = $sth->fetchrow_hashref() ) {
my $av = Koha::AuthorisedValues->search({ category => 'DAMAGED', authorised_value => $c->{damaged} });
$damaged = $av->count ? $av->next->lib : '';
}
+ my $materials;
+ if ( $c->{materials} && $confirm_parts_required ) {
+ my $descriptions = Koha::AuthorisedValues->get_description_by_koha_field({frameworkcode => '', kohafield =>'items.materials', authorised_value => $c->{materials} });
+ $materials = $descriptions->{lib} // $c->{materials};
+ }
my @subtitles = split(/ \| /, $c->{'subtitle'} // '' );
my $checkout = {
DT_RowId => $c->{itemnumber} . '-' . $c->{borrowernumber},
@@ -248,6 +255,7 @@ while ( my $c = $sth->fetchrow_hashref() ) {
lost => $lost,
claims_returned => $claims_returned,
damaged => $damaged,
+ materials => $materials,
borrower => {
surname => $c->{surname},
firstname => $c->{firstname},
--