From 144137d370117b239d8d28fca10a6ce829451c10 Mon Sep 17 00:00:00 2001 From: Marcel de Rooy Date: Thu, 16 Jan 2025 09:26:40 +0000 Subject: [PATCH] Bug 38903: Fix theme in some getTranslatedLanguages calls Content-Type: text/plain; charset=utf-8 Combining opac with pref template is wrong. This pref should actually be renamed to something like intranetTheme(s) or so. Replacing the obsolete prog theme in Languages.t by undef. This achieves the same: getting all themes for that interface. Test plan: Add some languages for opac and intranet. Do not enable exactly the same set. Enable TranslateNotices. Verify that you have all OPAC languages on memberentry and opac-messaging. And all languages on additional contents. Run t/db_dependent/Languages.t Signed-off-by: Marcel de Rooy Tested with: OPAC languages: en, nl-NL, de-DE Staff languages: en, de-DE, fr-FR --- Koha/Notice/Template.pm | 6 ++---- members/memberentry.pl | 2 +- opac/opac-memberentry.pl | 2 +- opac/opac-messaging.pl | 2 +- t/db_dependent/Languages.t | 4 ++-- 5 files changed, 7 insertions(+), 9 deletions(-) diff --git a/Koha/Notice/Template.pm b/Koha/Notice/Template.pm index 8d0184e751..3199bdb890 100644 --- a/Koha/Notice/Template.pm +++ b/Koha/Notice/Template.pm @@ -44,10 +44,8 @@ sub get_default { my $self = shift; my $lang = $self->lang; if ( $lang eq 'default' ) { - my $translated_languages = C4::Languages::getTranslatedLanguages( - 'opac', - C4::Context->preference('template') - ); + my $translated_languages = + C4::Languages::getTranslatedLanguages( 'opac', C4::Context->preference('opacthemes') ); $lang = @{ @{$translated_languages}[0]->{sublanguages_loop} }[0]->{rfc4646_subtag}; } diff --git a/members/memberentry.pl b/members/memberentry.pl index c2df452336..5f1fa4fba7 100755 --- a/members/memberentry.pl +++ b/members/memberentry.pl @@ -934,7 +934,7 @@ if ( defined $min ) { } if ( C4::Context->preference('TranslateNotices') ) { - my $translated_languages = C4::Languages::getTranslatedLanguages( 'opac', C4::Context->preference('template') ); + my $translated_languages = C4::Languages::getTranslatedLanguages( 'opac', C4::Context->preference('opacthemes') ); $template->param( languages => $translated_languages ); } diff --git a/opac/opac-memberentry.pl b/opac/opac-memberentry.pl index ce650168c9..19bcaba59a 100755 --- a/opac/opac-memberentry.pl +++ b/opac/opac-memberentry.pl @@ -100,7 +100,7 @@ if ( defined $min ) { ); } -my $translated_languages = C4::Languages::getTranslatedLanguages( 'opac', C4::Context->preference('template') ); +my $translated_languages = C4::Languages::getTranslatedLanguages( 'opac', C4::Context->preference('opacthemes') ); $template->param( op => $op, diff --git a/opac/opac-messaging.pl b/opac/opac-messaging.pl index 1a311cf157..66f070c677 100755 --- a/opac/opac-messaging.pl +++ b/opac/opac-messaging.pl @@ -97,7 +97,7 @@ if ( $opac_messaging && C4::Context->preference("SMSSendDriver") eq 'Email' ) { my $new_session_id = $query->cookie('CGISESSID'); if ( C4::Context->preference('TranslateNotices') ) { - my $translated_languages = C4::Languages::getTranslatedLanguages( 'opac', C4::Context->preference('template') ); + my $translated_languages = C4::Languages::getTranslatedLanguages( 'opac', C4::Context->preference('opacthemes') ); $template->param( languages => $translated_languages, patron_lang => $patron->lang, diff --git a/t/db_dependent/Languages.t b/t/db_dependent/Languages.t index baac53b541..53b608e9cb 100755 --- a/t/db_dependent/Languages.t +++ b/t/db_dependent/Languages.t @@ -56,7 +56,7 @@ $languages = C4::Languages::getLanguages( 'eng', 1 ); is( scalar(@$languages), 2, 'getLanguages() filtering using AdvancedSearchLanguages works' ); my $translatedlanguages1; -warnings_are { $translatedlanguages1 = C4::Languages::getTranslatedLanguages( 'opac', 'prog' ) } +warnings_are { $translatedlanguages1 = C4::Languages::getTranslatedLanguages('opac') } [], 'no warnings for calling getTranslatedLanguages'; my @currentcheck1 = map { $_->{current} } @$translatedlanguages1; @@ -64,7 +64,7 @@ my $onlyzeros = first { $_ != 0 } @currentcheck1; ok( !$onlyzeros, "Everything was zeros.\n" ); my $translatedlanguages2; -warnings_are { $translatedlanguages2 = C4::Languages::getTranslatedLanguages( 'opac', 'prog', 'en' ) } +warnings_are { $translatedlanguages2 = C4::Languages::getTranslatedLanguages( 'opac', undef, 'en' ) } [], 'no warnings for calling getTranslatedLanguages'; my @currentcheck2 = map { $_->{current} } @$translatedlanguages2; -- 2.39.5