From 22651c9c2b25afd0e63a986f8ffb258480d735b8 Mon Sep 17 00:00:00 2001 From: Martin Renvoize Date: Mon, 18 Sep 2023 10:28:06 +0100 Subject: [PATCH] Bug 31503: (follow-up) Remove OPACCustomConsentTypes This patch removes all trace of the original OPACCustomConsentTypes preference. We now use Koha::Plugins->feature_enabled in preference. Signed-off-by: Martin Renvoize Signed-off-by: Tomas Cohen Arazi --- installer/data/mysql/atomicupdate/bug31503.pl | 8 +------- installer/data/mysql/mandatory/sysprefs.sql | 1 - .../prog/en/modules/admin/preferences/opac.pref | 9 --------- t/db_dependent/Koha/Patron/Consents.t | 13 ++++++------- 4 files changed, 7 insertions(+), 24 deletions(-) diff --git a/installer/data/mysql/atomicupdate/bug31503.pl b/installer/data/mysql/atomicupdate/bug31503.pl index 5be62e73b8..2b4e55ece3 100755 --- a/installer/data/mysql/atomicupdate/bug31503.pl +++ b/installer/data/mysql/atomicupdate/bug31503.pl @@ -2,7 +2,7 @@ use Modern::Perl; return { bug_number => 31503, - description => "Change patron_consent.type, add pref OPACCustomConsentTypes", + description => "Change patron_consent.type", up => sub { my ($args) = @_; my ( $dbh, $out ) = @$args{qw(dbh out)}; @@ -11,11 +11,5 @@ return { q{ALTER TABLE `patron_consent` MODIFY `type` tinytext COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'consent type, could be custom type'} ); say $out "Changed column 'patron_consent.type'"; - - $dbh->do( - q{INSERT IGNORE INTO systempreferences ( `variable`, `value`, `options`, `explanation`, `type` ) VALUES -('OPACCustomConsentTypes', '0', NULL, 'If enabled, custom consent types can be registered on account page', 'YesNo')} - ); - say $out "Addedd preference 'OPACCustomConsentTypes'"; }, }; diff --git a/installer/data/mysql/mandatory/sysprefs.sql b/installer/data/mysql/mandatory/sysprefs.sql index 047ce06f91..6af4e7b210 100644 --- a/installer/data/mysql/mandatory/sysprefs.sql +++ b/installer/data/mysql/mandatory/sysprefs.sql @@ -449,7 +449,6 @@ INSERT INTO systempreferences ( `variable`, `value`, `options`, `explanation`, ` ('OpacCloud','0',NULL,'If ON, enables subject cloud on OPAC','YesNo'), ('OpacAdditionalStylesheet','','','Define an auxiliary stylesheet for OPAC use, to override specified settings from the primary opac.css stylesheet. Enter the filename (if the file is in the server\'s css directory) or a complete URL beginning with http (if the file lives on a remote server).','free'), ('OpacCoce','0', NULL, 'If on, enables cover retrieval from the configured Coce server in the OPAC', 'YesNo'), -('OPACCustomConsentTypes', '0', NULL, 'If enabled, custom consent types can be registered on account page', 'YesNo'), ('OPACCustomCoverImages','0',NULL,'If enabled, the custom cover images will be displayed at the OPAC. CustomCoverImagesURL must be defined.','YesNo'), ('OPACdefaultSortField','relevance','relevance|popularity|call_number|pubdate|acqdate|title|author','Specify the default field used for sorting','Choice'), ('OPACdefaultSortOrder','dsc','asc|dsc|za|az','Specify the default sort order','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 f0579bd307..39815ecf72 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 @@ -553,15 +553,6 @@ OPAC: summary: "in user summary box on OPAC homepage (the system preference 'OPACUserSummary' must be enabled)" user: "on patron's 'your summary' page" - ". Note that displayed savings may be inaccurate if checkout history is anonymized." - - - - pref: OPACCustomConsentTypes - default: 0 - choices: - 1: Allow - 0: "Don't allow" - - "users to register consents for custom (plugin based) consent types on the user account page." - - '
NOTE: The consents tab is also visible when PrivacyPolicyConsent is enabled.' - OpenURL: - - 'Complete URL of OpenURL resolver (starting with http:// or https://):' diff --git a/t/db_dependent/Koha/Patron/Consents.t b/t/db_dependent/Koha/Patron/Consents.t index 4d2bf54d8f..eeea426ab3 100755 --- a/t/db_dependent/Koha/Patron/Consents.t +++ b/t/db_dependent/Koha/Patron/Consents.t @@ -54,6 +54,10 @@ subtest 'Method available_types' => sub { plan tests => 7; $schema->storage->txn_begin; + t::lib::Mocks::mock_preference( 'PrivacyPolicyConsent', 'Enforced' ); + my $types = Koha::Patron::Consents->available_types; + is( keys %$types, 1, 'Expect one type for privacy policy' ); + # Mock get_enabled_plugins my $plugins = []; my $plugins_module = Test::MockModule->new('Koha::Plugins'); @@ -66,16 +70,11 @@ subtest 'Method available_types' => sub { $plugin_2->mock( 'patron_consent_type', sub { return $data_2; } ); $plugins = [ $plugin_1, $plugin_2 ]; - t::lib::Mocks::mock_preference( 'PrivacyPolicyConsent', 'Enforced' ); - t::lib::Mocks::mock_preference( 'OPACCustomConsentTypes', 0 ); - my $types = Koha::Patron::Consents->available_types; - is( keys %$types, 1, 'Expect one plugin for privacy policy' ); - t::lib::Mocks::mock_preference( 'OPACCustomConsentTypes', 1 ); $types = Koha::Patron::Consents->available_types; - is( keys %$types, 3, 'Expect three plugins when allowing custom consents' ); + is( keys %$types, 3, 'Expect three types when plugins installed and enabled' ); t::lib::Mocks::mock_preference( 'PrivacyPolicyConsent', '' ); $types = Koha::Patron::Consents->available_types; - is( keys %$types, 2, 'Expect two plugins, when pref disabled' ); + is( keys %$types, 2, 'Expect two types, when plugins enabled but PrivacyPolicyConsent disabled' ); is( $types->{GDPR_PROCESSING}, undef, 'GDPR key should not be found' ); is_deeply( $types->{plugin_2}, $data_2->[1], 'Check type hash' ); -- 2.39.5