From 20b89d5da3b11db1e0cdbf886b5bc8873be441da 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 Content-Type: text/plain; charset=utf-8 This patch removes all trace of the original OPACCustomConsentTypes preference. We now use Koha::Plugins->feature_enabled in preference. Signed-off-by: Martin Renvoize --- 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 babdbdbe0d..2b2794106e 100644 --- a/installer/data/mysql/mandatory/sysprefs.sql +++ b/installer/data/mysql/mandatory/sysprefs.sql @@ -447,7 +447,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 e49000cc92..be8620a2fa 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 @@ -551,15 +551,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.30.2