Bugzilla – Attachment 140762 Details for
Bug 31577
Use patron category multi-select for OpacHiddenItemsExceptions system preference
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 31577: Use patron category multi-select for OpacHiddenItemsExceptions system preference
Bug-31577-Use-patron-category-multi-select-for-Opa.patch (text/plain), 6.47 KB, created by
Katrin Fischer
on 2022-09-19 21:36:10 UTC
(
hide
)
Description:
Bug 31577: Use patron category multi-select for OpacHiddenItemsExceptions system preference
Filename:
MIME Type:
Creator:
Katrin Fischer
Created:
2022-09-19 21:36:10 UTC
Size:
6.47 KB
patch
obsolete
>From 4cac46dd7d8576cd3ef2835e82120ef825602685 Mon Sep 17 00:00:00 2001 >From: Katrin Fischer <katrin.fischer.83@web.de> >Date: Mon, 19 Sep 2022 21:32:12 +0000 >Subject: [PATCH] Bug 31577: Use patron category multi-select for > OpacHiddenItemsExceptions system preference > >We are now using the patron category selects on almost all system >preferences, but OpacHiddenItemsExceptions was still missing. > >To test: >- Before applying the patch: >- Add patron categories to OpacHiddenItemsExceptions using | >- Add configuration to OpacHiddenItems >- Verify all works as expected in the OPAC >- Apply patch, run database update >- Verify the system preference shows the correct settings from before >- Verify feature still works as expected >--- > Koha/Patron/Category.pm | 2 +- > .../bug_31577_OpacHiddenItemsExceptions.pl | 18 ++++++++++++++++++ > installer/data/mysql/mandatory/sysprefs.sql | 2 +- > .../en/modules/admin/preferences/opac.pref | 4 +++- > t/db_dependent/Koha/Patron/Category.t | 4 ++-- > 5 files changed, 25 insertions(+), 5 deletions(-) > create mode 100755 installer/data/mysql/atomicupdate/bug_31577_OpacHiddenItemsExceptions.pl > >diff --git a/Koha/Patron/Category.pm b/Koha/Patron/Category.pm >index c6837ca00f..05766545a7 100644 >--- a/Koha/Patron/Category.pm >+++ b/Koha/Patron/Category.pm >@@ -202,7 +202,7 @@ TODO: Remove on bug 22547 > sub override_hidden_items { > my ($self) = @_; > return any { $_ eq $self->categorycode } >- split( /\|/, C4::Context->preference('OpacHiddenItemsExceptions') ); >+ split( ',', C4::Context->preference('OpacHiddenItemsExceptions') ); > } > > =head2 Internal methods >diff --git a/installer/data/mysql/atomicupdate/bug_31577_OpacHiddenItemsExceptions.pl b/installer/data/mysql/atomicupdate/bug_31577_OpacHiddenItemsExceptions.pl >new file mode 100755 >index 0000000000..a1a00dfd17 >--- /dev/null >+++ b/installer/data/mysql/atomicupdate/bug_31577_OpacHiddenItemsExceptions.pl >@@ -0,0 +1,18 @@ >+use Modern::Perl; >+ >+return { >+ bug_number => "31577", >+ description => "Add category list pull-down to OpacHiddenItemsExceptions", >+ up => sub { >+ my ($args) = @_; >+ my ($dbh, $out) = @$args{qw(dbh out)}; >+ # Do you stuffs here >+ $dbh->do(q{ >+ UPDATE systempreferences SET value = REPLACE(value,"|",","), >+ explanation = REPLACE(explanation,"separated by |,","separated by comma,") >+ WHERE variable = "OpacHiddenItemsExceptions" >+ }); >+ # Print useful stuff here >+ say $out "Settings for OpacHiddenItemsExceptions have been updated"; >+ }, >+}; >diff --git a/installer/data/mysql/mandatory/sysprefs.sql b/installer/data/mysql/mandatory/sysprefs.sql >index 617d34b814..0fd9062a20 100644 >--- a/installer/data/mysql/mandatory/sysprefs.sql >+++ b/installer/data/mysql/mandatory/sysprefs.sql >@@ -435,7 +435,7 @@ INSERT INTO systempreferences ( `variable`, `value`, `options`, `explanation`, ` > ('OPACFinesTab','1','','If OFF the patron fines tab in the OPAC is disabled.','YesNo'), > ('OPACFRBRizeEditions','0','','If ON, the OPAC will query one or more ISBN web services for associated ISBNs and display an Editions tab on the details pages','YesNo'), > ('OpacHiddenItems','','','This syspref allows to define custom rules for hiding specific items at the OPAC. See http://wiki.koha-community.org/wiki/OpacHiddenItems for more information.','Textarea'), >-('OpacHiddenItemsExceptions','',NULL,'List of borrower categories, separated by |, that can see items otherwise hidden by OpacHiddenItems','Textarea'), >+('OpacHiddenItemsExceptions','',NULL,'List of borrower categories, separated by comma, that can see items otherwise hidden by OpacHiddenItems','Textarea'), > ('OpacHiddenItemsHidesRecord','1','','Hide biblio record when all its items are hidden because of OpacHiddenItems','YesNo'), > ('OpacHighlightedWords','1','','If Set, then queried words are higlighted in OPAC','YesNo'), > ('OPACHoldingsDefaultSortField','first_column','first_column|homebranch|holdingbranch','Default sort field for the holdings table at the OPAC','choice'), >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref >index c74d5c9d49..fc60e2656b 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref >+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref >@@ -631,8 +631,10 @@ OPAC: > class: code > - Define custom rules to hide specific items from search and view on the OPAC. How to write these rules is documented on the <a href="http://wiki.koha-community.org/wiki/OpacHiddenItems" target="_blank">Koha wiki</a>. > - >- - 'List of patron categories, separated by |, that can see items otherwise hidden by <a href="/cgi-bin/koha/admin/preferences.pl?op=search&searchfield=OpacHiddenItems">OpacHiddenItems</a>:' >+ - 'List of patron categories, that can see items otherwise hidden by <a href="/cgi-bin/koha/admin/preferences.pl?op=search&searchfield=OpacHiddenItems">OpacHiddenItems</a>:' > - pref: OpacHiddenItemsExceptions >+ choices: patron-categories >+ class: multiple > - > - pref: OpacHiddenItemsHidesRecord > default: 1 >diff --git a/t/db_dependent/Koha/Patron/Category.t b/t/db_dependent/Koha/Patron/Category.t >index be7f32b8de..9a3dc27c50 100755 >--- a/t/db_dependent/Koha/Patron/Category.t >+++ b/t/db_dependent/Koha/Patron/Category.t >@@ -155,12 +155,12 @@ subtest 'override_hidden_items() tests' => sub { > my $category_1 = $builder->build_object({ class => 'Koha::Patron::Categories' }); > my $category_2 = $builder->build_object({ class => 'Koha::Patron::Categories' }); > >- t::lib::Mocks::mock_preference( 'OpacHiddenItemsExceptions', $category_1->categorycode . '|' . $category_2->categorycode . '|RANDOM' ); >+ t::lib::Mocks::mock_preference( 'OpacHiddenItemsExceptions', $category_1->categorycode . ',' . $category_2->categorycode . ',RANDOM' ); > > ok( $category_1->override_hidden_items, 'Category configured to override' ); > ok( $category_2->override_hidden_items, 'Category configured to override' ); > >- t::lib::Mocks::mock_preference( 'OpacHiddenItemsExceptions', 'RANDOM|' . $category_2->categorycode ); >+ t::lib::Mocks::mock_preference( 'OpacHiddenItemsExceptions', 'RANDOM,' . $category_2->categorycode ); > > ok( !$category_1->override_hidden_items, 'Category not configured to override' ); > ok( $category_2->override_hidden_items, 'Category configured to override' ); >-- >2.30.2
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 31577
:
140761
|
140762
|
140972
|
142329