Bugzilla – Attachment 164356 Details for
Bug 33568
Use the REST API to display items on the biblio detail view
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 33568: Do not embed item types
Bug-33568-Do-not-embed-item-types.patch (text/plain), 4.44 KB, created by
Jonathan Druart
on 2024-04-03 07:40:58 UTC
(
hide
)
Description:
Bug 33568: Do not embed item types
Filename:
MIME Type:
Creator:
Jonathan Druart
Created:
2024-04-03 07:40:58 UTC
Size:
4.44 KB
patch
obsolete
>From 3adb6433006580433dce670466ec5bc266513f33 Mon Sep 17 00:00:00 2001 >From: Jonathan Druart <jonathan.druart@bugs.koha-community.org> >Date: Thu, 31 Aug 2023 11:33:33 +0200 >Subject: [PATCH] Bug 33568: Do not embed item types >MIME-Version: 1.0 >Content-Type: text/plain; charset=UTF-8 >Content-Transfer-Encoding: 8bit > >Performance for 1000 items from 22 to 19s > >It replaces the input in the column header filter with a dropdown list. > >Signed-off-by: Owen Leonard <oleonard@myacpl.org> > >Signed-off-by: Laurence Rault <laurence.rault@biblibre.com> >Signed-off-by: Emily Lamancusa <emily.lamancusa@montgomerycountymd.gov> >Signed-off-by: Tomás Cohen Arazi <tomascohen@theke.io> >--- > .../tables/items/catalogue_detail.inc | 16 ++++++++++++---- > 1 file changed, 12 insertions(+), 4 deletions(-) > >diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/html_helpers/tables/items/catalogue_detail.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/html_helpers/tables/items/catalogue_detail.inc >index 5df4be9ef0f..9ff4e401fb7 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/includes/html_helpers/tables/items/catalogue_detail.inc >+++ b/koha-tmpl/intranet-tmpl/prog/en/includes/html_helpers/tables/items/catalogue_detail.inc >@@ -2,6 +2,7 @@ > [% USE Koha %] > [% USE Branches %] > [% USE AuthorisedValues %] >+[% USE ItemTypes %] > [% USE raw %] > > [% BLOCK build_table %] >@@ -171,6 +172,13 @@ > e["_str"] = e["branchname"]; > return e; > }); >+ const all_item_types = [% To.json(ItemTypes.Get) | $raw %]; >+ const item_types_filters = all_item_types.map(e => { >+ e["_id"] = e["itemtype"]; >+ e["_str"] = e["translated_description"]; >+ return e; >+ }); >+ const item_types_notforloan = new Map(all_item_types.map( it => [it.itemtype, it.notforloan] )); > > const can_edit_items_from = [% To.json(can_edit_items_from || {}) | $raw %]; > const item_type_image_locations = [% To.json(item_type_image_locations) | $raw %]; >@@ -192,7 +200,7 @@ > [%# In case or SeparateHoldings we may need to display the number of biblios in each tab %] > [%# Do we need separate/new endpoints or do we hack the somewhere client-side? %] > let item_table_url = "/api/v1/biblios/[% biblio.biblionumber | uri %]/items?"; >- let embed = ["+strings,checkout,checkout.patron,transfer,transfer+strings,first_hold,first_hold+strings,first_hold.patron,first_hold.desk,item_type"]; >+ let embed = ["+strings,checkout,checkout.patron,transfer,transfer+strings,first_hold,first_hold+strings,first_hold.patron,first_hold.desk"]; > [% IF Koha.Preference('LocalCoverImages') %] > embed.push('cover_image_ids'); > [% END %] >@@ -257,6 +265,7 @@ > } > > let filters_options = { >+ 2: () => all_item_types, > 3: () => all_libraries, > 4: () => all_libraries, > }; >@@ -313,7 +322,6 @@ > [% IF ( item_level_itypes ) %] > { > data: "me.item_type_id", // FIXME Cannot filter by biblioitem.itemtype >- // FIXME Cannot filter on item type description > className: "itype", > searchable: true, > orderable: true, >@@ -464,7 +472,7 @@ > nodes += '<span class="dmg">%s</span>'.format(escape_str(damaged_lib)); > } > >- if ( row.not_for_loan_status || row.item_type.notforloan ) { >+ if ( row.not_for_loan_status || item_types_notforloan[row.item_type_id] ) { > let not_for_loan_lib = av_not_for_loan.get(row.not_for_loan_status.toString()); > nodes += '<span class="notforloan">%s'.format(_("Not for loan")) + ( not_for_loan_lib ? '<span class="reason"> (%s)</span>'.format(escape_str(not_for_loan_lib)) : '' ) + '</span>'; > } >@@ -498,7 +506,7 @@ > } > [% END %] > >- if ( ! ( row.not_for_loan_status || row.item_type.notforloan || row.checked_out_date || row.lost_status || row.withdrawn || row.damaged || row.transfer || row.first_hold || row.recall ) ) { >+ if ( ! ( row.not_for_loan_status || item_types_notforloan[row.item_type_id] || row.checked_out_date || row.lost_status || row.withdrawn || row.damaged || row.transfer || row.first_hold || row.recall ) ) { > nodes += ' <span>%s</span>'.format(_("Available")) > } > >-- >2.34.1
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 33568
:
151339
|
153791
|
164308
|
164309
|
164310
|
164311
|
164312
|
164313
|
164314
|
164315
|
164316
|
164317
|
164318
|
164319
|
164320
|
164321
|
164322
|
164323
|
164324
|
164325
|
164326
|
164327
|
164328
|
164329
|
164330
|
164331
|
164332
|
164333
|
164334
|
164335
|
164336
|
164337
|
164338
|
164339
|
164340
|
164341
|
164342
|
164343
|
164344
|
164345
|
164346
|
164347
|
164348
|
164349
|
164350
|
164351
|
164352
|
164353
|
164354
|
164355
|
164356
|
164358
|
164359
|
164360
|
164361
|
164362
|
164363
|
164364
|
164365
|
164366
|
164367
|
164368
|
164369
|
164370
|
164371
|
164372
|
164373
|
164374
|
164472
|
164480
|
164482
|
164483
|
164485
|
164528