Bugzilla – Attachment 186209 Details for
Bug 38311
DataTables - Simplify the building of the dropdown list filters
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 38311: Add dropdown list to column filters linked to an AV - Vue components
Bug-38311-Add-dropdown-list-to-column-filters-link.patch (text/plain), 9.04 KB, created by
Jonathan Druart
on 2025-09-05 14:25:40 UTC
(
hide
)
Description:
Bug 38311: Add dropdown list to column filters linked to an AV - Vue components
Filename:
MIME Type:
Creator:
Jonathan Druart
Created:
2025-09-05 14:25:40 UTC
Size:
9.04 KB
patch
obsolete
>From 62d4eddc4a9ee606c62ddc7e92947aef366c03cc Mon Sep 17 00:00:00 2001 >From: Jonathan Druart <jonathan.druart@bugs.koha-community.org> >Date: Thu, 31 Jul 2025 15:43:36 +0200 >Subject: [PATCH] Bug 38311: Add dropdown list to column filters linked to an > AV - Vue components > >--- > .../js/vue/components/ERM/AgreementResource.vue | 15 +++++++-------- > .../ERM/EHoldingsEBSCOPackageTitlesList.vue | 3 ++- > .../components/ERM/EHoldingsEBSCOTitlesList.vue | 2 +- > .../ERM/EHoldingsLocalPackageResource.vue | 7 ++++--- > .../ERM/EHoldingsLocalTitleResource.vue | 2 +- > .../js/vue/components/ERM/LicenseResource.vue | 7 ++++--- > .../prog/js/vue/components/ResourceList.vue | 13 ++++++++++++- > .../js/vue/components/Vendors/VendorResource.vue | 5 +++-- > 8 files changed, 34 insertions(+), 20 deletions(-) > >diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementResource.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementResource.vue >index 52ac14d708a..4f9e51e4a26 100644 >--- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementResource.vue >+++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementResource.vue >@@ -653,23 +653,22 @@ export default { > table_settings: agreement_table_settings, > add_filters: true, > filters_options: { >- 2: [ >+ vendor_id: [ > ...vendors.value.map(e => { > e["_id"] = e["id"]; > e["_str"] = e["name"]; > return e; > }), > ], >- 4: () => baseResource.map_av_dt_filter("av_agreement_statuses"), >- 5: () => >- baseResource.map_av_dt_filter( >- "av_agreement_closure_reasons" >- ), >- 6: [ >+ status: baseResource.map_av_dt_filter("av_agreement_statuses"), >+ closure_reason: baseResource.map_av_dt_filter( >+ "av_agreement_closure_reasons" >+ ), >+ is_perpetual: [ > { _id: 0, _str: $__("No") }, > { _id: 1, _str: $__("Yes") }, > ], >- 7: () => >+ renewal_priority: () => > baseResource.map_av_dt_filter( > "av_agreement_renewal_priorities" > ), >diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsEBSCOPackageTitlesList.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsEBSCOPackageTitlesList.vue >index 38d4cd07a7c..d67efbc6753 100644 >--- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsEBSCOPackageTitlesList.vue >+++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsEBSCOPackageTitlesList.vue >@@ -154,7 +154,8 @@ export default { > ], > }, > filters_options: { >- 1: () => map_av_dt_filter("av_title_publication_types"), >+ publication_type: () => >+ map_av_dt_filter("av_title_publication_types"), > }, > actions: { 0: ["show"] }, > default_filters: { >diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsEBSCOTitlesList.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsEBSCOTitlesList.vue >index ff9139d44a2..aaf71f7f29f 100644 >--- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsEBSCOTitlesList.vue >+++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsEBSCOTitlesList.vue >@@ -186,7 +186,7 @@ export default { > ], > }, > filters_options: { >- 1: () => >+ publication_type: () => > map_av_dt_filter( > "authorisedValues.av_title_publication_types" > ), >diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsLocalPackageResource.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsLocalPackageResource.vue >index 60c8bfd5da4..859430673e5 100644 >--- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsLocalPackageResource.vue >+++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsLocalPackageResource.vue >@@ -193,15 +193,16 @@ export default { > table_settings: eholdings_packages_table_settings, > add_filters: true, > filters_options: { >- 1: [ >+ vendor_id: [ > ...vendors.value.map(e => { > e["_id"] = e["id"]; > e["_str"] = e["name"]; > return e; > }), > ], >- 2: () => baseResource.map_av_dt_filter("av_package_types"), >- 3: () => >+ package_type: () => >+ baseResource.map_av_dt_filter("av_package_types"), >+ content_type: () => > baseResource.map_av_dt_filter("av_package_content_types"), > }, > actions: { >diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsLocalTitleResource.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsLocalTitleResource.vue >index 4f806832c36..8263e9ed0ee 100644 >--- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsLocalTitleResource.vue >+++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsLocalTitleResource.vue >@@ -450,7 +450,7 @@ export default { > table_settings: eholdings_titles_table_settings, > add_filters: true, > filters_options: { >- 3: () => >+ publication_type: () => > baseResource.map_av_dt_filter("av_title_publication_types"), > }, > actions: { >diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/LicenseResource.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/LicenseResource.vue >index 599df4e3ca5..e92c5d433f4 100644 >--- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/LicenseResource.vue >+++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/LicenseResource.vue >@@ -292,15 +292,16 @@ export default { > table_settings: license_table_settings, > add_filters: true, > filters_options: { >- 2: [ >+ vendor_id: [ > ...vendors.value.map(e => { > e["_id"] = e["id"]; > e["_str"] = e["name"]; > return e; > }), > ], >- 4: () => baseResource.map_av_dt_filter("av_license_types"), >- 5: () => baseResource.map_av_dt_filter("av_license_statuses"), >+ type: () => baseResource.map_av_dt_filter("av_license_types"), >+ status: () => >+ baseResource.map_av_dt_filter("av_license_statuses"), > }, > actions: { > 0: ["show"], >diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ResourceList.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ResourceList.vue >index 63f09bd11d2..6eb2b86b3c1 100644 >--- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ResourceList.vue >+++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ResourceList.vue >@@ -235,9 +235,20 @@ export default { > const tableOptionsWithColumns = computed(() => { > props.instancedResource.tableOptions.columns = getTableColumns( > props.instancedResource.resourceAttrs >- ); >+ ).map(col => { >+ const filterOptions = >+ props.instancedResource.tableOptions.filters_options; >+ const filterRequired = Object.keys(filterOptions).includes( >+ col.data >+ ); >+ if (filterRequired) { >+ col.dataFilter = col.data; >+ } >+ return col; >+ }); > return props.instancedResource.tableOptions; > }); >+ > const tableEventList = computed(() => { > const actionButtons = props.instancedResource.tableOptions.actions[ > "-1" >diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/Vendors/VendorResource.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/Vendors/VendorResource.vue >index 1920aba79ed..334281daf69 100644 >--- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/Vendors/VendorResource.vue >+++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/Vendors/VendorResource.vue >@@ -665,9 +665,10 @@ export default { > add_filters: true, > filters_options: { > ...(baseResource.map_av_dt_filter("av_vendor_types").length && { >- 2: () => baseResource.map_av_dt_filter("av_vendor_types"), >+ type: () => >+ baseResource.map_av_dt_filter("av_vendor_types"), > }), >- 3: [ >+ active: [ > { _id: 0, _str: $__("Inactive") }, > { _id: 1, _str: $__("Active") }, > ], >-- >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 38311
:
184926
|
184927
|
186209
|
187376
|
187377
|
188314
|
188468
|
188469