From b97819074c6139a094bac6d5a914dfef2be7574a Mon Sep 17 00:00:00 2001 From: Owen Leonard Date: Wed, 21 May 2025 15:34:10 +0000 Subject: [PATCH] Bug 39957: Fix JS error on credit and debit types administration pages This patch fixes an JS error in several administration pages, introduced by Bug 39099 and 39810. We can't access a DOM node without checking for its existence first. To test, apply the patch and go to Administration. - Check the following pages: - Authorized values - Credit types - Debit types - Item types - Patron categories. - On each page check the JavaScript console on the initial page. There should be no errors. - Check the add/edit page for each and confirm that the library limitation Select2 widget works correctly. Sponsored-by: Athens County Public Libraries --- .../prog/en/modules/admin/authorised_values.tt | 7 +++++-- .../intranet-tmpl/prog/en/modules/admin/credit_types.tt | 6 ++++-- .../intranet-tmpl/prog/en/modules/admin/debit_types.tt | 6 ++++-- koha-tmpl/intranet-tmpl/prog/en/modules/admin/itemtypes.tt | 7 +++++-- koha-tmpl/intranet-tmpl/prog/js/categories.js | 6 ++++-- 5 files changed, 22 insertions(+), 10 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/authorised_values.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/authorised_values.tt index 999cfecd785..05384025ba3 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/authorised_values.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/authorised_values.tt @@ -439,8 +439,11 @@ } return true; }); - $("#library_limitation")[0].style.minWidth = "450px"; - $("#library_limitation").select2(); + + if ($("#library_limitation").length > 0) { + $("#library_limitation")[0].style.minWidth = "450px"; + $("#library_limitation").select2(); + } }); [% END %] diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/credit_types.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/credit_types.tt index 9ed0accb655..7fb1068645d 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/credit_types.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/credit_types.tt @@ -289,8 +289,10 @@ //Start filtered $("#filter_system").click(); - $("#library_limitation")[0].style.minWidth = "450px"; - $("#library_limitation").select2(); + if ($("#library_limitation").length > 0) { + $("#library_limitation")[0].style.minWidth = "450px"; + $("#library_limitation").select2(); + } }); [% END %] diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/debit_types.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/debit_types.tt index 65b7d961009..018bd5c6654 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/debit_types.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/debit_types.tt @@ -306,8 +306,10 @@ //Start filtered $("#filter_system").click(); - $("#library_limitation")[0].style.minWidth = "450px"; - $("#library_limitation").select2(); + if ($("#library_limitation").length > 0) { + $("#library_limitation")[0].style.minWidth = "450px"; + $("#library_limitation").select2(); + } }); [% END %] diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/itemtypes.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/itemtypes.tt index 98cf9de4c43..0f7915e3657 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/itemtypes.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/itemtypes.tt @@ -567,8 +567,11 @@ if( $("#icons .tab-pane.active").length < 1 ){ $("#icons a:first").tab("show"); } - $("#library_limitation")[0].style.minWidth = '450px'; - $("#library_limitation").select2(); + + if ($("#library_limitation").length > 0) { + $("#library_limitation")[0].style.minWidth = "450px"; + $("#library_limitation").select2(); + } }); [% END %] diff --git a/koha-tmpl/intranet-tmpl/prog/js/categories.js b/koha-tmpl/intranet-tmpl/prog/js/categories.js index e9d30193475..72835e1f187 100644 --- a/koha-tmpl/intranet-tmpl/prog/js/categories.js +++ b/koha-tmpl/intranet-tmpl/prog/js/categories.js @@ -52,8 +52,10 @@ $(document).ready(function () { table_settings ); - $("#library_limitation")[0].style.minWidth = "450px"; - $("#library_limitation").select2(); + if ($("#library_limitation").length > 0) { + $("#library_limitation")[0].style.minWidth = "450px"; + $("#library_limitation").select2(); + } $("#categorycode").on("blur", function () { toUC(this); -- 2.39.5