From 2507fc24a8abfe102c1f5fae54f8e10c775fd3da Mon Sep 17 00:00:00 2001 From: Alex Arnaud Date: Thu, 25 Oct 2018 11:19:01 +0200 Subject: [PATCH] Bug 20194: Display both biblioitems.itemtype and items.itype in circulation screens Test plan: 1. Verify that biblioitems.itemtype, items.itype are mapped to a MARC field. Otherwise create those mappings. 2. Create a biblio with an itemtype 3. Create an item with a different itemtype for this biblio 4. Check out this item to a patron (P1) 5. Verify that both itemtypes are displayed in the checkouts table (moremember.pl, circulation.pl, returns.pl) 6. Create a patron whose guarantor is P1 and verify that both itemtypes and the ccode are displayed in the 'relatives checkouts' table --- admin/columns_settings.yml | 6 ++++++ circ/returns.pl | 4 +++- .../prog/en/includes/checkouts-table-footer.inc | 2 +- koha-tmpl/intranet-tmpl/prog/en/includes/checkouts-table.inc | 1 + koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt | 1 + koha-tmpl/intranet-tmpl/prog/en/modules/circ/returns.tt | 5 +++-- .../intranet-tmpl/prog/en/modules/members/moremember.tt | 2 ++ koha-tmpl/intranet-tmpl/prog/js/checkouts.js | 12 +++++++++++- svc/checkouts | 7 +++++-- 9 files changed, 33 insertions(+), 7 deletions(-) diff --git a/admin/columns_settings.yml b/admin/columns_settings.yml index 4cf88e8..d645690 100644 --- a/admin/columns_settings.yml +++ b/admin/columns_settings.yml @@ -329,6 +329,8 @@ modules: - columnname: title - + columnname: record_type + - columnname: item_type - columnname: collection @@ -486,6 +488,8 @@ modules: - columnname: title - + columnname: record_type + - columnname: item_type - columnname: collection @@ -538,6 +542,8 @@ modules: columnname: dateaccessioned is_hidden: 1 - + columnname: record_type + - columnname: itype - columnname: borrower diff --git a/circ/returns.pl b/circ/returns.pl index c2f20ef..75fc732 100755 --- a/circ/returns.pl +++ b/circ/returns.pl @@ -582,6 +582,7 @@ foreach ( sort { $a <=> $b } keys %returneditems ) { my $item = Koha::Items->find({ barcode => $bar_code }); next unless $item; # FIXME The item has been deleted in the meantime, # we could handle that better displaying a message in the template + my $biblio = $item->biblio; # FIXME pass $item to the template and we are done here... $ri{itembiblionumber} = $biblio->biblionumber; @@ -589,7 +590,8 @@ foreach ( sort { $a <=> $b } keys %returneditems ) { $ri{itemauthor} = $biblio->author; $ri{itemcallnumber} = $item->itemcallnumber; $ri{dateaccessioned} = $item->dateaccessioned; - $ri{itemtype} = $item->effective_itemtype; + $ri{recordtype} = $biblio->itemtype; + $ri{itemtype} = $item->itype; $ri{itemnote} = $item->itemnotes; $ri{itemnotes_nonpublic} = $item->itemnotes_nonpublic; $ri{ccode} = $item->ccode; diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/checkouts-table-footer.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/checkouts-table-footer.inc index b831c1e..40d2195 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/checkouts-table-footer.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/checkouts-table-footer.inc @@ -1,6 +1,6 @@ - Totals: + Totals: [% totaldue | html %] [% finetotal | html %] [% totalprice | html %] diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/checkouts-table.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/checkouts-table.inc index d78e001..3d106ee 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/checkouts-table.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/checkouts-table.inc @@ -15,6 +15,7 @@ Due date Due date Title + Record type Item type Collection Location diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt index 2b273e0..bc411a4 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt @@ -851,6 +851,7 @@ No patron matched [% message | html %] Due date (unformatted, hidden) Due date Title + Record type Item type Collection code Location diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/returns.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/circ/returns.tt index 5763e97..dd502d9 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/returns.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/circ/returns.tt @@ -683,7 +683,7 @@ [% IF ( riloop ) %]

Checked-in items

- + [% FOREACH riloo IN riloop %] @@ -710,7 +710,8 @@ - + + + + diff --git a/koha-tmpl/intranet-tmpl/prog/js/checkouts.js b/koha-tmpl/intranet-tmpl/prog/js/checkouts.js index b964a9c..c850e98 100644 --- a/koha-tmpl/intranet-tmpl/prog/js/checkouts.js +++ b/koha-tmpl/intranet-tmpl/prog/js/checkouts.js @@ -292,6 +292,11 @@ $(document).ready(function() { }, { "mDataProp": function ( oObj ) { + return oObj.recordtype_description.escapeHtml(); + } + }, + { + "mDataProp": function ( oObj ) { return oObj.itemtype_description.escapeHtml(); } }, @@ -516,7 +521,7 @@ $(document).ready(function() { // Build a summary of checkouts grouped by itemtype var checkoutsByItype = json.aaData.reduce(function (obj, row) { - obj[row.itemtype_description] = (obj[row.itemtype_description] || 0) + 1; + obj[row.type_for_stat] = (obj[row.type_for_stat] || 0) + 1; return obj; }, {}); var ul = $('
Due dateTitleAuthorBarcodeHome libraryHolding libraryShelving locationCall numberDate acquiredTypePatronNote
Due dateTitleAuthorBarcodeHome libraryHolding libraryShelving locationCall numberDate acquiredRecord typeItem typePatronNote
[% riloo.location | html %] [% riloo.itemcallnumber | html %] [% riloo.dateaccessioned | $KohaDates %][% ItemTypes.GetDescription( riloo.itemtype ) | html %] [% AuthorisedValues.GetByCode('CCODE', riloo.ccode) | html %][% ItemTypes.GetDescription( riloo.recordtype ) | html %][% ItemTypes.GetDescription( riloo.itemtype ) | html %] [% AuthorisedValues.GetByCode('CCODE', riloo.ccode) | html %] [% IF ( riloo.duedate ) %] [% riloo.patron.surname | html %], [% riloo.patron.firstname | html %] ([% riloo.patron.category.description | html %]) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tt index a88a98e..3411c8d 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tt @@ -690,7 +690,9 @@ Due date hidden not formatted Due date TitleRecord type Item typeCollection Location Checked out on Checked out from