Bug 7038 Contextual help is always in English

When another language than English is selected in pro interface, the software
strings are in this language, but when clicking ?, on the top right of any
page, the contextual help page which pop-up is always in English.

This patch fixes this bug and another side bug affecting editing contextual
help when not in English. help.pl script were in sync with the recently
patched/improved theme/language/template selection.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Context help now matches the selected template language.

Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
This commit is contained in:
Frédéric Demians 2011-10-16 21:50:24 +02:00 committed by Chris Cormack
parent f9fdf43043
commit ef5d4d7bf8
2 changed files with 6 additions and 14 deletions

View File

@ -97,14 +97,12 @@ elsif ( $type eq 'modify' ) {
} else {
(-w $file) or $error =
"WARNING: You will not be able save, because your webserver cannot write to '$file'. Contact your admin about help file permissions.";
open (INFILE, $file) or die "Cannot read file '$file'"; # unlikely death, since we just checked
open (my $fh, '<', $file) or die "Cannot read file '$file'"; # unlikely death, since we just checked
my $help = '';
while ( my $inp = <INFILE> ) {
unless ( $inp =~ /INCLUDE/ ) {
$help .= $inp;
}
while ( <$fh> ) {
$help .= /\[% INCLUDE .* %\](.*)$/ ? $1 : $_;
}
close INFILE;
close $fh;
$template->param( 'help' => $help );
$type = 'save';
}

10
help.pl
View File

@ -32,15 +32,9 @@ our $refer = $query->param('url');
$refer = $query->referer() if !$refer || $refer eq 'undefined';
$refer =~ /koha\/(.*)\.pl/;
my $from = "modules/help/$1.tt";
my $from = "help/$1.tt";
my $htdocs = C4::Context->config('intrahtdocs');
my ( $theme, $lang ) = C4::Templates::themelanguage( $htdocs, $from, "intranet", $query );
unless ( -e "$htdocs/$theme/$lang/$from" ) {
$from = "modules/help/nohelp.tt";
( $theme, $lang ) = C4::Templates::themelanguage( $htdocs, $from, "intranet", $query );
}
my $template = C4::Templates->new('intranet', "$htdocs/$theme/$lang/$from");
my $template = C4::Templates::gettemplate($from, 'intranet', $query);
$template->param( referer => $refer );
output_html_with_http_headers $query, "", $template->output;