Bugzilla – Attachment 164355 Details for
Bug 33568
Use the REST API to display items on the staff biblio detail view
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 33568: Do not embed library names
Bug-33568-Do-not-embed-library-names.patch (text/plain), 4.71 KB, created by
Jonathan Druart
on 2024-04-03 07:40:54 UTC
(
hide
)
Description:
Bug 33568: Do not embed library names
Filename:
MIME Type:
Creator:
Jonathan Druart
Created:
2024-04-03 07:40:54 UTC
Size:
4.71 KB
patch
obsolete
>From badf81e84c878e7243d7c93bc460aedb987fb035 Mon Sep 17 00:00:00 2001 >From: Jonathan Druart <jonathan.druart@bugs.koha-community.org> >Date: Thu, 31 Aug 2023 10:22:11 +0200 >Subject: [PATCH] Bug 33568: Do not embed library names >MIME-Version: 1.0 >Content-Type: text/plain; charset=UTF-8 >Content-Transfer-Encoding: 8bit > >Performance for 1000 items from 30s to 22s > >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 | 19 ++++++++++++++++--- > koha-tmpl/intranet-tmpl/prog/js/datatables.js | 4 ++-- > 2 files changed, 18 insertions(+), 5 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 02c613b5f5e..5df4be9ef0f 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 >@@ -1,5 +1,6 @@ > [% USE To %] > [% USE Koha %] >+[% USE Branches %] > [% USE AuthorisedValues %] > [% USE raw %] > >@@ -164,6 +165,13 @@ > [% END %] > > >+ const all_libraries = [% To.json(Branches.all) | $raw %]; >+ const libraries_filters = all_libraries.map(e => { >+ e["_id"] = e["branchcode"]; >+ e["_str"] = e["branchname"]; >+ return e; >+ }); >+ > const can_edit_items_from = [% To.json(can_edit_items_from || {}) | $raw %]; > const item_type_image_locations = [% To.json(item_type_image_locations) | $raw %]; > const av_loc = new Map([% To.json(AuthorisedValues.Get('LOC')) | $raw %].map( av => [av.authorised_value, av.lib])); >@@ -185,7 +193,6 @@ > [%# 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"]; >- embed.push('home_library', 'holding_library'); > [% IF Koha.Preference('LocalCoverImages') %] > embed.push('cover_image_ids'); > [% END %] >@@ -248,6 +255,11 @@ > if ( !items_selection.hasOwnProperty(tab_id) ){ > items_selection[tab_id] = []; > } >+ >+ let filters_options = { >+ 3: () => all_libraries, >+ 4: () => all_libraries, >+ }; > var items_table = $("#" + tab_id + '_table').kohaTable({ > ajax: { url: item_table_url }, > order: [[ 0, "asc" ]], >@@ -320,7 +332,7 @@ > }, > [% END %] > { >- data: "me.holding_library_id:holding_library.name", >+ data: "me.holding_library_id", > className: "location", > searchable: true, > orderable: true, >@@ -329,7 +341,7 @@ > } > }, > { >- data: "me.home_library_id:home_library.name", >+ data: "me.home_library_id", > className: "homebranch", > searchable: true, > orderable: true, >@@ -768,6 +780,7 @@ > items_table_settings[tab_id], > add_filters, > default_filters, >+ filters_options, > ); > > return items_table; >diff --git a/koha-tmpl/intranet-tmpl/prog/js/datatables.js b/koha-tmpl/intranet-tmpl/prog/js/datatables.js >index 323b21d7e17..be3f62aa5d7 100644 >--- a/koha-tmpl/intranet-tmpl/prog/js/datatables.js >+++ b/koha-tmpl/intranet-tmpl/prog/js/datatables.js >@@ -947,7 +947,7 @@ function _dt_add_delay(table_dt, table_node, delay_ms) { > * @param {Object} default_filters Add a set of default search filters to apply at table initialisation > * @return {Object} The dataTables instance > */ >- $.fn.kohaTable = function(options, table_settings, add_filters, default_filters) { >+ $.fn.kohaTable = function(options, table_settings, add_filters, default_filters, filters_options) { > var settings = null; > > if(options) { >@@ -998,7 +998,7 @@ function _dt_add_delay(table_dt, table_node, delay_ms) { > > var table_dt = table.DataTable(); > if ( add_filters ) { >- _dt_add_filters(this, table_dt); >+ _dt_add_filters(this, table_dt, filters_options); > } > > table.DataTable().on("column-visibility.dt", function(){_dt_on_visibility(add_filters, table, table_dt);}) >-- >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