From 3632d2b1c7b8d8a88a4e4304add86af27e223537 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 f1fd9bfe5b..03d6ba7b0d 100755 --- a/members/memberentry.pl +++ b/members/memberentry.pl @@ -898,7 +898,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 28b7a1aa26..cd022c64c3 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 a3eab4d74f..2ac4315cbe 100755 --- a/opac/opac-messaging.pl +++ b/opac/opac-messaging.pl @@ -90,7 +90,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 4db8bb1812..63a81650a0 100755 --- a/t/db_dependent/Languages.t +++ b/t/db_dependent/Languages.t @@ -47,7 +47,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; @@ -55,7 +55,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